|
|
by 이별사랑 이글루 파인더
카테고리
전자 업계는 현재의 개발 방법론을 통합할 수 있는 시스템 레벨 설계 해법을 찾기 위해 전력 투구하고 있다.
글: Gabe Moretti, 테크니컬 에디터 전자 산업의 태동 이후, 제조 기술은 보다 우수한 기능의 새로운 EDA 툴 개발을 촉진하는 원동력이 되어 왔다. 그리고 이제는 전자 산업을 재편할 정도의 기술적인 전환점에 도달했다. 대부분의 디자이너들에게 있어서 최신 IC 제조 기술을 사용하는 것은 이제 더 이상 최고의 목표가 아니다. 오늘날의 제품은 경쟁력을 유지하기 위해 복잡한 기능을 수행해야 한다. 130nm 이하의 공정에서 나타나는 기생 현상은 디바이스가 제 기능을 발휘하는 데 악영향을 미친다. 반면 대부분의 디자이너들은 이러한 문제를 해결하는 방법에 대해 교육 받지 않았으므로 개발 주기는 길어지고 비용은 증가하게 되었다. 따라서 레이아웃에서 문제를 피해 가거나 해결하길 기대하지 말고 문제를 본질적으로 피하는 방법을 찾는 것이 바람직하다. 이렇게 하려면 제품이 제 기능을 수행하고 일정에 맞출 수 있게 해주는 신중하고 정밀한 시스템 레벨 설계가 필요하다. SystemVerilog SystemVerilog는 Verilog-1995의 모델링 기능을 확장한 것으로서 VHDL-1993이 제시한 기능을 충족시키지만 그 이상을 만족시키기도 한다. 이 개발 작업을 후원하는 업계 컨소시엄인 Accellera가 직면한 근본적인 문제는 VHDL의 주요 단점 즉, 장황함과 복잡성을 피하는 것이다. 구문을 복잡하게 하지 않고?더 중요한 것은 의미론을 복잡하게 하지 않고?언어에 기능을 추가하는 것은 사실상 불가능하다. VHDL에 비해 이 프로젝트가 갖는 이점은 시장 수요에 있다. VHDL은 시대를 앞서 있지만 전자 공학 엔지니어들은 극소수 외에 VHDL 기능을 사용하지 않고 있다. 따라서 VHDL은 복잡한 것처럼 보이고 시뮬레이터는 수행할 작업이 더 많으므로 Verilog 보다 실행 속도가 느린 단점이 있었다. EDA 벤더에겐 안 좋은 소식이지만, 미국 국방부의 계약 체결 조건을 충족시키려면 제품이 모든 언어를 지원해야 한다는 미 공군의 주장 때문에 벤더들은 하기 싫은 일을 억지로 할 수 밖에 없었다. 디자이너가 언어의 복잡성, 느린 실행 속도와 씨름하여 보다 우수한 동작 모델링과 검증 기능의 장점을 누릴 수 있게 될지는 앞으로 두고 볼 일이다. SystemVerilog의 목표는 게이트 수가 많은 VC(virtual-cores) 기반의 버스 집약적인 칩 설계의 생산성을 개선하는 것이다. 이는 주로 칩 구현과 검증 플로우를 목표로 한다. 버전 3.1은 Verilog 2001의 네 가지 주요 확장 기능을 구현했다. 트랜잭션 모델링을 지원하기 위해 SystemVerilog는 디자이너가 C/C++/SystemC 기능을 설계 모델에 포함시킬 수 있도록 하는 DPI(직접 프로그래밍 인터페이스)를 제공하는데, DPI 덕분에 SystemVerilog와 SystemC 블록 간의 동시 시뮬레이션이 가능해졌다. 확장 그룹(a group of extensions)은 모델링의 편의성을 높이는 것을 목표로 하고 있다. 인터페이스 레벨에서 트랜잭션을 모델링하는 기능을 사용하면 버스 집약적인 회로 개발을 수월하게 할 수 있으며, 포트 양쪽에 임의의 데이터 형식을 허용하면 모델링 작업이 한결 수월해진다. 물론 확장된 데이터 형식은 C 계열 언어 사용을 지원한다. 또한 상위 모듈에 로컬로 모듈을 중첩시키면 VC 보호 기능을 강화할 수 있다. 이 방법의 단점은 포트 연결 규칙이 느슨해져 설계 오류가 발생할 수 도 있다는 점이다. 사용 편의성과 구조적인 수정 간의 상반관계에서는 아마도 사용 편의성 쪽이 절대적으로 불리할 것이다. 디자이너는 한 번에 정확하게 모델링해야 하지만 검증 엔지니어는 다른 형식의 두 연결 포트가 동작하지 않는 경우 문제 해결을 위해 며칠 정도의 시간을 소요해야 할 수 있다. 이를 위해, ‘검증을 위한 디자인(DFV, design-for-verification)’ 방법을 구현하는 어서션 기반 검증을 지원하는 새로운 메커니즘이 발표됐다. Synopsys는 DFV를 SystemVerilog 위치를 확보하기 위한 홍보 전략의 핵심으로 내걸었다. 포트 의미론을 완화시켜 발생하는 문제를 확인하는 데 사용할 수 있는 임베디드 어서션(embedded assertion)은 기능과 한계의 관점에서 설계 의도를 파악한다. 기능과 한계는 시뮬레이션 중에 검증한다. IBM(www.ibm.com)의 형식 어서션 언어인 PSL(Property Specification Language)은 SystemVerilog가 사용하는 어서션 기술을 제공하며, 개체 지향 기술을 지원하여 테스트벤치와 하드웨어 모델의 개발과 재사용을 향상시킨다. Accellera는 원칙적으로 SystemVerilog 다음 버전을 Verilog 2005 워킹 그룹이 사용할 수 있도록 하는 데 동의했다. Accellera는 시장에서 혼동과 비호환성을 야기시키는 Verilog 2001의 두 가지 초집합이 생기는 것을 피하는 데 동의했다. 하지만 기술 공여는 Verilog 연구 그룹의 기대보다 늦어지기 때문에 Verilog 2005 개발자가 할 일이 더 많아질 것이다. Verilog 2005 Verilog 1995와 Verilog 2001을 개발한 IEEE 1364 워킹 그룹은 IEEE Verilog 표준 개발 작업을 맡고 있다. 2003년 3월, 이 그룹은 새로운 전자 시스템 설계 과제를 다루기 위해 표준을 업데이트하고 확장하기 위한 기술 공여를 요청했다. 그 해 9월, 9개의 주제를 다루기 위해 EDA 벤더 네 곳으로부터 9개의 공여를 받았다. 이 위원회의 목적은 2005년 새로운 IEEE 표준을 작성하는 것이다. 연구 그룹에는 유감스럽게도 Accellera가 2004년 6월경 공여를 약속했지만 아직 SystemVerilog 작업 공여는 전혀 이루어지지 않았다. Cadence Design Systems는 여섯 개 분야의 기술을 공여했고 Fintronic, Jeda Technologies, Verisity가 각각 한 분야씩을 다루는 기술을 공여했다. Cadence의 공여는 근본적으로 Verilog 2005의 구문과 의미론으로의 확장을 목적으로 한다. Cadence는 Verilog를 시스템 레벨로 확장하는 데 유용한 새로운 데이터 형식 정의 뿐 아니라, Verilog로 일관성 있게 데이터 형식과 함수를 정의하는 방법의 지침이 되는 규칙도 제공했다. 이를 위해 기본 및 복합 데이터 형식의 집합, 사용자 정의 형식의 일반적인 방법론 및 임의의 형식의 동적 메모리 할당을 제시했다. Verilog 모델의 소스 코드 일부를 암호화하는 방법을 제시한 공여는 제 3의 소프트 코어 공급자를 위해 독자적인 보호 기술을 제공하기 위한 것이다. VPI(Verilog Programming Interface)를 확장하는 공여는 확장된 데이터 형식과 PSL을 사용하는 어서션을 지원한다. Verilog로 작성된 모델의 디버깅을 편리하게 할 목적으로 두 가지 공여가 이루어졌다. 하나는 테스트 패턴을 제한적으로 랜덤화하는 기능을 제공하고 나머지 하나는 디자이너가 높은 추상화 계층에서 트랜잭션을 보고 분석할 수 있는 트랜잭션 기록용 VPI가 그것이다. 또한 Cadence는 단기간에 강력한 언어를 생성하고 미래의 확장 경로를 순탄하게 만들어 주는 지침도 기부했으며, 연구 그룹에 과거보다 체계적으로 작동할 수 있게 하는 구조를 제공하는 것을 목적으로 하고 있다. Fintronic은 Verilog 모델을 따로 컴파일하는 것을 지원하는 기술을 공여했다. 이 기능으로 Verilog 설계 부분들을 따로 컴파일할 수 있다. 그런 다음 미리 컴파일한 부분들을 다른 Verilog 소스 및 바이너리 파일과 혼합하여 설계를 하고 시뮬레이트할 수 있다. 이 기능은 Cadence 가 공여한 암호화 기술의 대안이 될 수는 있지만 직접 대체할 수는 없다. Jeda Technologies는 다른 언어 Jeda-X와 Verilog 언어를 결합시켜 테스트벤치 개발과 설계 디버깅 기능 확장을 제안했다. 제안된 언어 Jeda-X는 재사용 가능한 모듈식 테스트벤치를 작성하기 위한 개체 지향 프로그래밍을 지원할 것이다. 또한 영역 지향 프로그래밍(aspect-oriented programming), 동시 프로그래밍, 주기 기반 테스트벤치도 지원한다. 마지막으로 동작 모델링을 위한 향상된 리스트, 배열 데이터 형식, 멀티스레드 실행을 위한 동기화 프리미티브 등을 제공한다. Verisity는 테스트벤치와 디버깅을 지원하는 자체 기술을 Jeda-X 제안의 직접적인 대안으로 공여했다. Verisity는 Verilog에 ‘keep’과 ‘gen’이라는 두 가지 키워드를 추가할 것을 제안했는데 이는 디자이너가 모든 값을 규격에 맞게 유지하기 위한 규칙(강력한 규칙과 느슨한 규칙 모두)과 필요할 때 새로운 자극을 정확하게 생성하기 위한 요구를 명시할 수 있게 해준다. Verisity의 다른 공여는 Verilog을 확장하여 디자이너가 검증 엔지니어와 협력함으로써 함께 기능상 다뤄야 할 점을 기술하고 테스트해야 하는, 결정적인 입력과 내부 이벤트 조합을 확인할 수 있게 한 점이다. 또한 테스트 작성자용 구문을 공여하여 테스트 모듈이나 모듈들 내부의 데이터 값 생성에 제한을 가하는 ‘keep’ 문장을 도입할 수 있게 했다. ‘extend’ 키워드를 사용하여 테스트 작성자는 한 번에 올바른 입력 시퀀스의 기본 규칙을 기술하고 나중에 이 규칙을 테스트용으로 확장하여 하나의 대상에 집중할 수 있다. 연구 그룹은 SystemVerilog 기술 공여를 받으면 이미 많은 SystemVerilog 기능을 Verilog 2005에 설계해 넣었기 때문에 어려운 통합 문제에 직면할 것이다. 또한 이 두 언어는 유사하지만 결코 동일하지는 않다. 두 언어의 차이를 극복하고 그 결과 언어학적으로 동일한 부모를 가진 다른 두 방언이 아닌 하나의 언어를 만들어내려면 엔지니어링과 관리 분야에서 모두 엄청난 노력이 필요할 것이다. 상업적 지원 이상 네 가지 언어의 표준 개발은 서로 다른 경로를 따르고 있다. SystemC와 SystemVerilog의 개발자 모두 언어를 상업용으로 설계했고 표준화를 위한 움직임은 언어 수용을 위한 엔지니어링 분야의 노력인 동시에 마케팅 분야의 노력이기도 하다. Verilog 2005와 VHDL 200x는 IEEE를 제정한 전문가 학회 중 하나인 컴퓨터 소사이어티(Computer Society)의 전통적인 전략을 따르고 있다. 즉, 먼저 엔지니어링 분야의 노력을 통해 표준을 개발한 다음 그 표준의 마케팅을 실시하는 것이다. 그 결과 IEEE가 개발한 언어 중 어느 하나를 지원하는 툴은 아직 존재하지 않는다. 몇몇 EDA 벤더가 VHDL 구현에 PSL을 지원함으로써 이 접근 방식에 예외를 만들고 있다. 그 동안 이 전략은 다른 쪽에 비해 상업적으로 성공을 거두지 못한 것으로 입증됐다. 예를 들면, VHDL과 Verilog의 경우, VHDL은 VHDL의 일부분이라도 사용한 EDA 툴은 어느 것이든 표준화 이전에 사용할 수 없었다는 점 때문에 상업적인 손실이 컸던 반면 Verilog는 개발 단계에서도 적극적인 지원을 누렸다. 그러나 EDA 벤더는 IEEE 개발 프로세스가 언어 구성 방법에 관한 엔지니어링 측면의 뛰어난 통찰력을 제공하고 밝혀내기 어려운 고객의 기호를 알려 주므로 IEEE 개발 프로세스에 적극 투자하려 할 것이다. Synopsys는 SystemC 개발의 진정한 원동력이었다. Synopsys 초기 언어 개발은 독자적이었지만 Synopsys는 재빨리 Cadence가 Verilog에서 개발했던 전략을 따랐다. Synopsys는 업계 컨소시엄 Open SystemC를 형성했는데 이는 Verilog의 성공을 이끌어낸 컨소시엄인 OVI(Open Verilog International)와 유사했다. Open SystemC는 EDA 벤더의 후원을 받는 컨소시엄은 언어를 빨리 수용하는 데 도움이 되지 못한다는 것이 분명해지자 OSCI로 변모했다. 그 과정에서 Synopsys는 두 주요 경쟁사인 Cadence와 Mentor의 폭넓은 참여를 위해 OSCI의 정책과 방향에 관한 권한을 상당 부분 포기했다. SystemC는 Verilog만큼 인기를 얻지 못하고 있는데 그 이유는 시장이 작기 때문이기도 하고 사용할 수 있는 툴이 시스템 설계와 하드웨어 설계의 간극을 제대로 메워주지 못하고 있기 때문이기도 하다. 포괄적인 SystemC 툴 목록은 OSCI 웹 사이트에서 구할 수 있지만 일부 업체는 SystemC 사용에 RTL(register-transfer-level) 방법론을 결합시키는 제품을 개발했기 때문에 특히 주목할 필요가 있다. Cadence, EVE(Emulation and Verification Engineering), Mentor, Synopsys, TNI-Valiosys 등 업체들은 엔지니어들이 한 설계에서 SystemC 모델을 VHDL, Verilog 모델과 함께 사용할 수 있게 해주는 혼합형 언어 시뮬레이터를 제공했다. CoWare는 SystemC 시장에 일찍 진출했다. 다수의 시스템 업체들은 ConvergenSC 제품이 설계와 검증에 공통의 인프라를 사용하기 때문에 이 제품을 선택했다. ConvergenSC는 OSCI가 무상으로 제공했던 정식 시뮬레이터의 첫 번째 대안이었다. 예상대로 대체 시뮬레이터(ConvergenSC)는 상업용 애플리케이션용으로 유용한 툴이 되기에는 너무 기능이 적었다. Forte Design Systems는 웹상에 유용한 안내서 역할을 할 SystemC 자습서를 무료로 제공한다. Forte Design Systems의 Cynthesizer 합성 툴을 사용하면 디자이너는 SystemC 번역을 Verilog나 VHDL로 변환하여 SystemC 모델에서 하드웨어를 생성할 수 있다.(참고 자료 1). 많은 EDA 벤더들이 SystemVerilog 지원 툴을 개발하고 있다. 발표된 툴 대부분은 6월에 열렸던 설계 자동화 회의의 상업용 툴이 되었다. Real Intent, Synopsys, 0-In은 형식 검증 제품 계획을 발표했다. Novas, SynaptiCAD, Synopsys는 테스트벤치 및 디버깅 툴을 지원할 예정이다. Aldec, @HDL, Synopsys는 시뮬레이터를 제공할 것이다. Axis Systems는 에뮬레이션 제품과 관련된 언어를 지원할 예정이다. Bluespec, Cadence, Mentor는 제품 제안의 성격을 명시하지 않았지만 Cadence와 Mentor 모두 최소한 이 언어의 시뮬레이션을 지원할 것으로 기대해도 좋겠다. Verilog 2005에 대한 상업적 지원은 아직 없지만(발표 당시), Fintronic, Jeda Technologies, Verisity 모두 연구 그룹에 공여한 기술을 구현하는 제품을 제공한다. Fintronic은 FinSim 제품에서 Verilog를 따로 컴파일하는 기능을 채용했고, Jeda Technologies는 Jeda-X를 테스트벤치 개발 툴로 시장에 내놓았으며, Verisity는 e language를 기반으로 자사 검증 제품을 위한 기술을 개발했다. 한편 Cadence는 검증 제품 전 라인에 공여 기술의 일부를 채용했다. 저자 EDN의 테크니컬 에디터인 Gabe Moretti의 연락처는 전화 1-941-497-9880, 팩스 1-941-497-9887, 이메일 gmoretti@edn.com이다. 시스템이라는 별칭이 필요 없는 VHDL 글: Stephen Bailey, Mentor Graphics EDA 업계에 시스템 레벨 설계를 다루는 새로운 언어나 개정 언어가 쏟아져 나오고 있다. 이들 언어는 주로 시스템이라는 접두사를 달고 있는 것이 특색이다. 신기하게도 VHDL 커뮤니티는 "SystemVHDL" 개정 작업에 대해 알린 적이 없다. 하지만 이렇게 홍보를 하지 않는다고 해서 VHDL이 앞으로 개선 계획이 없어 뒤쳐질 것이라는 것을 의미하지는 않는다. 오히려 VHDL 언어의 개정 노력으로 더 수준 높은 고급 설계 및 검증 기능을 VHDL에 가져올 것을 약속하고 있다. VHDL은 역사적으로 고급 HDL 기능의 선두 주자였기 때문에 설계 과정에서의 광범위한 사용이 RTL(register-transfer level)보다 더 추상적이라는 사실이 밝혀졌다. 그래서 VHDL 개정안을 "SystemVHDL"이라고 부르게 되면 VHDL이 다른 HDL과 같은 심각한 결함이 있었다는 것을 내포하게 된다. 개정 작업은 VHDL의 논리적인 연장선상에서 이루어지므로 IEEE는 새 천년에 처음 이루어지는 중요한 개정 작업이라는 점을 들어 VHDL 개정 작업을 특별히 인식하여 VHDL 200X라고 부른다. VHDL 200X 개발 계획에는 상위 레벨의 모델링 추상화를 촉진하는 개선 작업이 있으며 디자이너 생산성 향상, 상위 레벨의 추상화 기능, 복잡성 감소, 설계 의도 파악 개선 등도 포함된다. 또한 계획에는 현재 어렵거나 불가능한 모델링을 가능하게 하는 기능, 검증 생산성, 어서션 기반 검증, 자극 생성, 고차원 모델링(참조 모델과 트랜잭션 레벨 모델링)도 포함된다. 설계 생산성을 높이기 위해 VHDL은 견고한 데이터 형식 체계를 제공하는데, 여기에는 사용자 정의 형식인 열거, 부호 있음(signed), 부호 없음(unsigned), 비트, 비트 벡터, 정수와 제한된 정수, 리얼(real), 액세스(포인터)와 레코드 형식 등이 포함된다. VHDL은 해당 데이터 값(형식)에 사용자 정의 조작을 가해 데이터 값을 암호화하는 보호(protected) 형식을 정의하지만 완전한 개체 지향 기능은 누락되어 있다. 1076 위원회는 모델의 형식 및 서브프로그램의 매개변수화를 허용하기 위해 상속과 향상된 ‘generic’ 추가 방법을 확인하기 위한 노력을 기울이고 있다. 향상된 개체 지향 기능도 여러 레벨의 추상화 단계에서 인터페이스 모델링 발전을 촉진시킬 것으로 예상된다. 이러한 개체 지향 특성을 추가하면 모델링에서 추상화 레벨을 높일 뿐 아니라 설계 재사용 레벨을 높이는 데도 크게 도움이 될 것이다. 또한 연구 그룹은 VHDL의 정적 검증 기능을 손상시키지 않으면서 필요한 입력량을 줄이는 방법도 모색하고 있다. VHDL의 강력한 입력과 결정론적 시뮬레이션 의미론은 경합 조건, 잘못된 배열 인덱스, 잘못된 값 범위 등과 같은 문제를 예방하고 빨리 식별한다. 이런 특성은 검증 시간을 절약해 주는데 검증이 설계 시간의 70%를 차지하기 때문에 검증과 디버깅 작업이 크게 줄어든다. 많이 향상된 기능이 디자이너의 입력 부담을 줄여주는 동시에 설계 의도를 더 잘 파악할 수 있게 해준다. 프로세스의 결합과 순차적 속성에 기초하여 프로세스 민감도를 정확하게 파악하는 것 가장 좋은 예다. 아키텍처를 별도로 작성할 필요성을 없애는 것도 한 예다. 이런 변화의 대부분은 VHDL 언어에 상대적으로 미미한 영향을 미치지만, 디자이너의 VHDL에 대한 경험을 쌓는데는 중대한 영향을 미친다. 매우 드문 경우이긴 하지만 VHDL은 하드웨어 기능 모델링에 필요한 기능을 제공하기도 한다. 이 경우의 대표적인 예가 점퍼 또는 양방향 패스 스루(pass-through) 스위치를 모델링하는 기능이다. 연구 그룹은 이 문제도 다루고 있다. VHDL의 검증 생산성을 높이기 위해 연구 그룹은 Accellera의 PSL(Property Specification Language)을 VHDL의 속성-사양 기능으로 채택할 계획이다. PSL을 다음과 같이 여러 용도에 사용할 수 있다.
개체 지향 기능 향상은 두 가지 이점이 있다. 검증 기능과 설계 생산성을 모두 개선시키기 때문이다. 개체 지향 방법은 다음과 같은 작업을 간소화해 준다.
검증 생산성을 높이기 위해 계획한 개선 기능은 다음과 같다.
다음번 언어 개정 버전을 SystemVHDL이라고 부르지는 않지만 개정안은 설계 품질과 검증 생산성을 개선할 속성-사양과 검증 자동화 기능 뿐만 아니라, 보다 수준 높은 모델링과 추상화 기능을 제공할 것이다. 표1-언어 사양 ![]() 저자 Stephen Bailey는 Mentor Graphics의 기술 마케팅 엔지니어이자 IEEE 1076 워킹 그룹의 회장이다. 요약 내용
추가 정보 본 기사에 나온 제품에 대한 정보가 필요할 경우에는 아래의 업체에 문의하시면 됩니다. 문의하실 때에는 EDN을 통해 제품을 알게 됐다고 알려 주시길 바랍니다.
<출처 : http://www.ednkorea.com>
메모장
최근 등록된 덧글
<a href= http://coin-pu..
by Kids Coin at 07/22 paxil online <a href="h.. by paxil at 07/22 cheap viagra online <.. by cheap viag at 07/22 diflucan online <a hr.. by diflucan at 07/22 order cialis online <a .. by order cial at 07/22 최근 등록된 트랙백
Buy percocet and gree..
by Buy percocet. Phentermine cash on de.. by Phentermine weight loss. Phentermine 37.5 mg onlin.. by Phentermine 37.5 mg onlin.. Buy tramadol online cod. by Buy tramadol with ameri.. Off for tramadol online free.. by Cheap tramadol fedex o.. 이글루링크
|
|