일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- linux makefile 작성
- linux c 컴파일
- 남산업힐
- gpgpu-sim
- 컨벌루션 연산
- 클럭 게이팅
- 딥러닝 가속기
- makefile
- Design DNN Accelerator
- 데이터 해저드
- gcc 컴파일
- Pyverilog 설치
- DNN 가속기
- pyverilog 설치 오류
- AMBA
- CDC
- pytest-pythonpath 설치 오류
- Pyverilog 튜토리얼
- Pyverilog 실행
- Makefile compile
- 대구 반도체 설계기업 특화
- Data HAzard
- systolic array
- 이진수 곱셈 알고리즘
- CLOCK GATING
- CUDA
- Pyvrilog tutorial
- pygraphviz 설치 오류
- DNN Accelerator
- linux c++ 컴파일
- Today
- Total
목록Processor (24)
오늘은 맑음
CISC(Complex Instruction Set Computer)와 RISC(Reduced Instruction Set Computer)의 차이점을 간략하게 알아보겠습니다. CISC는 이름에서 나와있듯이 Complex Instruction Set으로 동작하는 Computer입니다. Intel이 대표적이죠. CISC는 이름처럼 명령어 셋이 복잡합니다. 하나의 명령어가 여러가지 동작을 수행할 수 있죠. 하나의 명령어에 여러가지 세부 명령어가 붙어 다양한 동작을 수행하고 각 명령어가 모두 메모리에 접근할 수 있습니다. 뭔가 많이 복잡하죠? CISC는 명령어가 복잡한 이유 때문에 하드웨어보다는 컴파일러, 즉 소프트웨어가 많이 중요합니다. 복잡한 명령어 세트를 컴파일해서 원활하게 동작시키려면 아주 똑똑한 컴파..
Vivado에서 power analysis를 보면 Total On-Chip Power가 나옵니다. Total On-Chip Power는 다음의 두 개의 파워를 더하면 나오는 값입니다. Static power : 개발자의 디자인과는 관계 없이 타겟 FPGA 보드에 의존성이 있음 IDLE상태에서 leakage power며 합성하는 타겟 동작주파수가 높아질수록 높아짐 Dynamic Power : Vivado에서 정해진 simulation에 의해 모든 switching될 수 있는 상황을 테스트해서 나오는 최대 파워 소모량 간단하게 설명하면 위와 같이 설명할 수 있을 것 같습니다. Vivado에서 정해진 simulation으로 측정된 데이터기 때문에 정확한 전력 소모량이라고 할 수는 없습니다. 더 궁금한 내용은 ..
Altera DE1-SOC보드에서 주파수 분주기를 만들어 보았습니다. DE1-SOC보드의 기본 동작주파수는 50MHz이며 1초에 1번 LED가 켜졌다가 꺼지는 동작을 수행합니다. 분주기의 코드는 다음과 같습니다. 1Hz로 동작을 해야 하기 때문에 0.5초에 한번씩 o_clk을 토글해줍니다. 따라서 1초에 한번씩 posedge와 negedge가 생성됩니다. prescaler를 top_module에 instance해주고 i_clk에 CLK을, top의 출력으로는 LED의 pin번호를 매핑해주면 1초에 한번씩 LED가 켜졌다가 꺼지는 것을 확인할 수 있습니다. 이를 활용하면 더 다양하게 주파수를 분주하여 사용할 수 있습니다. 하지만 이러한 개념으로 분주기를 사용할 수 있다는거지 실제로 사용하게 되면 타이밍 오..
write-through cache CPU에서 연산된 값에 의해 cache의 워드에 변화가 있을 때 main memory에도 함께 write해주는 정책, 항상 cache가 main memory와의 일관성을 유지할 수 있다. write-back cache cache 블록이 교체 정책(replacement policy)에 의해 교체괼 때 변경된 캐시 블록의 데이터를 main memory에 전송하는 정책, 또는 cache miss가 났을 때 main memory에 데이터를 전송하여 업데이트
multicycle-path기법을 이용하면 pipeline으로는 더이상 쪼갤 수 없는 동작도 더 빠른 동작 주파수로 동작시킬 수 있다... 앞으로 더 공부해 봐야겠다. https://www.xilinx.com/video/hardware/timing-exception-multicycle-path-constraints.html
low power processor설계 기법중 하나로 Clock Gating이 있다. 사용하지 않는 모듈의 입력으로 들어가는 CLK을 Gate처럼 사용하여 enable/disable 시키는 기법인 것 같다. 사용하지 않는 모듈에 지속적으로 CLK이 공급되면 동작이 필요없는 상황에서도 전력을 소모하므로 CLK의 공급을 차단해줌으로써 전력의 소모를 낮추겠다는 의도 같다. 위의 이미지는 Clock Gating을 설명한 그림이다. CG라는 gate가 CLK과 EN을 입력으로 받아 module로 CLK을 전달해준다. 만약 EN이 0이라면 CLK은 지속적으로 0이 전달되어 동작을 하지 못 할 것이다. 이 내용은 추후에 공부를 더 해 보완 해야겠다. 일반적으로 clock을 갖고 놀지 말아라, clock을 가공하지 말..