본문 바로가기

# Semiconductor/[Semicon Academy]103

[Harman 세미콘 아카데미] 4일차 - 7_segment로 디코더 회로 출력하기 [BCD 7-segment decoder] 위 그림처럼 8개의 LED(a, b, c, d, e, f, g, dot) 합쳐놓은 것을 말하며, 각 LED를 on하여 숫자 또는 문자를 표현한다. 4 bit의 입력으로 출력할 수 있는 경우의 수 → 2⁴(=16) 가지(0~9, A~F) case를 써주지도 않고, default도 안 만들어주면, LATCH가 만들어진다. → 주의할 것 ※ 분주기 (2진수에서 다음 bit의 주기는 이전 bit 주기의 2배) 위 코드를 예로 들면, i) 1 clk rising edge일 때, clk_div = clk_div +1 즉, clk 1주기 동안 clk_div[0]는 1회 rising/falling 한다. → clk의 주기는 clk_div[0]의 주기의 1/2 ii) clk_d.. 2023. 6. 22.
[Harman 세미콘 아카데미] 3일차 - Cora z7 setting, Decoder [FPGA board] 1. Board setting : 설계한 회로를 board에 programing하기 위해서는 입출력 변수들을 board의 입출력 단자에 연결해주어야 하고 그러기 위해서는 board에 장착된 FPGA chip의 연결 정보를 알아야 한다. → XDC file을 다운받아 vivado에서 programing 1) XDC File 다운받기 & 불러오기 ※ Cora z7 board 관련 링크 https://digilent.com/reference/programmable-logic/cora-z7/start Cora Z7 - Digilent Reference digilent.com ※ C언어에서 사용 가능한 파일 경로 사용 가능 : 영어 대문자/소문자, 숫자(맨 앞에는 오면 안 됨), _(und.. 2023. 6. 21.
[Harman 세미콘 아카데미] 3일차 - 가산기,비교기, 인코더/디코더 [가산기] 1. 가산기를 Data-flow modeling으로 설계 위 식은 조건연산자를 활용하여 작성할 수도 있다. ※ 조건연산자 Q = 조건식 ? A : B; i) 조건식이 참(1)일 경우, Q = A ii) 조건식이 거짓(0)일 경우, Q = B 2. 가산기 모듈을 테스트 벤치에 인스턴스 : 변수는 이전과 같으므로 DUT 값만 변경해주면 된다. cf) 가독성을 좋게 하기 위해 4자리마다 _를 붙여주면 좋다. → 9'b1_1111_1111 [비교기] 1. 1-bit 비교기 1) 논리 연산자로 i-bit 비교기 설계 assign 문을 사용하여 설계하였지만, 논리연산자를 사용하면 구조적 모델링과 별 차이가 없게 된다. ※ Force clock 시간의 흐름에 따라서 값을 지정해줄 수 있는 기능이다. 각 b.. 2023. 6. 21.
[Harman 세미콘 아카데미] 2일차 - 보수체계, Testbench, Delay [개요] 1. 논리 회로 - Combinational Logic (조합 논리 회로) : input이 주어지면, output이 고정된다. output이 다음 output에 영향을 주지 못 함. - Sequential Logic (순차 논리 회로) : 이전 output이 다음 output에 영향을 줄 수 있다.(Feedback) clock을 사용함. 2. Modeling 기법 동작 레벨(Behavioural Level) 동작적 모델링(Behavioural Modeling) : C언어와 가상 유사한 방법이며, 설계의 기능을 알고리즘 위주로 기술하는 방법. 하지만 Synthesis하 는 과정에서 LUT나 Flip Flop들이 지나치게 사용될 수 있다. initial(Time = 0 일떄 실행되는 구문), alw.. 2023. 6. 20.