본문 바로가기

# Programming24

[Python] 엑셀파일(xlsx) load 불가 - No module named 'openpyxl' [Trouble] Python Script 실행 중, xlsx file load 불가 오류 발생 [Solution] pip install openpyxl openpyxl 다운받으면 해결 2024. 4. 3.
[FPGA] RTL에서의 저전력 설계 방법(2/2) - Multi Vth, Multi Vdd, DVFS [Multi Vth] 📌 Multi Vth란? 트랜지스터의 문턱 전압과 누설 전류 사이의 특징을 이용하여 Time-critical 한 경로에 있는 로직들은 low_Vth 소자를 사용하고, 그 외의 경로에는 high_Vth 소자를 사용하여 누설 전력을 줄이고자 한 기술이다. 📌 구현 방법 1. 논리게이트의 다양한 Threshold Model 설계 ex) NMOS와 PMOS 트랜지스터의 Vth를 파라미터로 가지는 게이트 정의 module multi_vth_gate( input A, B, output Y ); parameter HIGH_VTH = 0.4; parameter LOW_VTH = 0.3; nmos #(HIGH_VTH) nmos_A (.D(A), .G(1'b1), .S(Y)); nmos #(LOW_V.. 2023. 12. 8.
[FPGA] RTL에서의 저전력 설계 방법(1/2) - Clock Gating, Power Gating [소비 전력] 소비전력에는 크게 두 가지 종류가 있으며, 아래 두 가지를 합쳐, 소비전력으로 나타낸다. 1. Dynamic Power CMOS에서 On/Off가 되는 순간(Transition이 일어나는 순간)에 소비되는 전력 동적 전력은 용량성 부하(C)가 충/방전하면서 소모되는 전력으로, 트랜지스터의 Short Citcuit 전류(Isc)와 스위칭 전류(Iswitch)에 의해 발생한다. 2. Static Power 누설전류(Leakage Current)를 의미한다. 최근, 공정이 점점 더 미세해지면서 이 문제의 심각성 또한 증가되고 있다. [Clock Gating] 📌 Clock Gating이란? Clock gating은 전체 회로가 활성 상태에 있을 때에만 클럭을 공급하는 것이 아니라, 특정 논리 블.. 2023. 12. 8.
H/W 통신 프로토콜의 모든 것 Part.1 - UART, SPI, I2C [Serial 통신] 📌 마이크로 프로세서의 데이터 교환 방법 하드웨어 통신 프로토콜은 "시리얼 통신 프로토콜" 또는 "하드웨어 인터페이스 프로토콜" 이라고도 한다. 이러한 프로토콜은 하드웨어 장치 간의 데이터 교환을 위해 사용되며, 특정한 하드웨어 인터페이스를 통해 데이터를 송수신한다. 실제로 통신 방식은 직렬 방식(Serial)과 병렬 방식(Parallel)이 있다. 1. 직렬 통신(Serial Communication) : 데이터 비트를 1개의 비트 단위로 외부에 송신하는 방식 구현하기 쉽고 장거리 전송이 가능하며, 기존의 통신 선로(전화선 등)을 쉽게 활용할 수 있어 비용 절감이 크다는 장점이 있다. ex) 1011 0100 (8bit) 전송 Line 하나로 한 bit씩 8번 보내서 총 8bit .. 2023. 12. 7.