본문 바로가기

All Posts59

SoC ASIC Flow(디지털 반도체 설계) 목차 Front End Flow Design Specification, RTL Design 디자인의 스펙을 정하고, IP를 선정 및 구매하고 필요에 따라 logic를 설계하고 Integration 하는 과정입니다. 현재는 주로 Verilog HDL를 사용합니다. Design Verification Coverege 100%를 목표로 보통 UVM환경에서 Simulation를 통해 디자인의 오류가 없는지 점검하고, 모든 코드들을 검증합니다. 기능적인 측면을 중점으로 검증이 이뤄집니다. Soft IP가 주 대상이며, Hard IP의 경우 model를 물립니다. VCS, Xcelium 같은 Tool를 주로 사용합니다. Loigc Synthesis SDC(Synopsys Design Constraint)를 작성하고.. 2023. 7. 20.
[Verilog] Full-adder, Ripple-carry adder 목차 1bit Full-adder circuit diagram and truth table Code 2023. 7. 20.
[Verilog] Clock generator 목차 Clock generator Blocking assignment(BA)을 사용해야 합니다. NonBlocking assignment(NBA)는 사용하지 말아야 합니다. 시작신호(time-0)는 Low로 권장합니다. negedge로 초기화해야 합니다. start_delay 사용을 권장합니다. Clock을 BA로 설계해야 하는 이유 BA로 표현한 문장은 처리되는 중 다른 이벤트들이 처리되지 않습니다. Clock은 모델의 작동에 기준이 되기 때문에 BA로 작성하여 확실한 이벤트 처리 기준이 되어야 합니다. 2023. 7. 20.
[Perl] Boolean 목차 Boolean 논리학에서 참(true)과 거짓(false)을 나타내는 데 사용하는 개념 Perl에서는? Perl에는 특별한 Boolean 타입은 없습니다. Perl 문서에서 어떤 함수가 "Boolean" 값을 반환한다고 나온 것을 종종 볼 수 있습니다. ​ 모든 스칼라 값들은 if를 써서 검사할 때 Truth or False 이 됩니다. 실제로는 어떤 함수가 "참"을 반환하다라고 하는 값은 보통 1을 반환합니다. "거짓"을 반환한다고 하는 값은 문자열로서 처리될 때는 빈 문자열 "' '처리되고, 수로 처리될 때는 0으로 처리됩니다. 수 0, 문자열 '0'과 '', 빈 리스트 "()", 그리고 "undef"은 불리언 컨텍스트에서는 모두 거짓이다. 그 외의 모든 값들은 다 참이다. 참인 값에 "!" 또.. 2023. 7. 20.
[APB] AMBA APB에 대해 알아보자(Revisions, Signals, Basic transfers) *All photos and content in this article are copyrighted by Arm Ltd. This is a personal compilation for students and practitioners entering digital design. Content may be removed or modified at any time at the request of the copyright holder, Arm Ltd. Copyright © 2003-2023 Arm Ltd. All rights reserved. AMBA APB SPEC ARM 홈페이지에서 다운로드하실 수 있습니다. 아래 이미지를 누르면 다운로드 가능한 ARM 공식 홈페이지로 이동합니다. APB Revisions .. 2023. 7. 20.
[Verilog] Blocking(=) vs Nonblocking(<=) 목차 Blocking assignments (BA) always 블록 내에서 실행 순서를 제어하기 위해 사용합니다. 현재 명령문이 실행될 때까지 다음 명령문의 실행을 차단합니다. 앞선 명령문이 실행되고 나서 뒷선 명령문들이 차례대로 실행됩니다. 2023. 7. 19.
반응형