본문 바로가기

[Harman] 반도체 설계

(60)
Verilog Projects. 1. 8x8 Multiplier 2. UART 3. Avalon Bus Modeling 4. Avalon Bus : PWM 5. Avalon Bus : GPIO 8-Bit Multiplier. Development Environment. Program : Quartus Prime 18.1 Lite Edition Tool : Modelsim 10.5b Starter Edition FPGA : MAX10 Grammer : Verilog2001 Objective. Design an 8-bit Multiplier module in Verilog and verify the results through simulation. Why? ALU는 CPU onlyiknowabout.tistory.com UART. Deve..
SoC Design with Nios II Processor. Nios II Processor Programmable Logic Device (ASIC, FPGA, CLPD) 설계에 사용하기 위해 Intel이 설계하고 개발한 소프트 코어 마이크로 프로세서 (Soft Core Micro-processor) 로 Device에 임베디드 시스템을 구축하기 위한 커스텀 하드웨어와 소프트웨어를 함께 디자인 및 개발할 수 있는 환경을 제공한다. 이를 통해, 응용 프로그램의 Specific Needs에 따라 기능과 주변 장치를 사용자가 직접 정의할 수 있다. (e.g. Platform Designer) Nios II Processor는 하버드 아키텍처를 사용한다. 또한 여러 Nios II 코어를 하나의 FPGA에 통합할 수 있는 대칭형 다중 처리 방식 (SMP, Symmetric..
Avalon Memory-Mapped Interfaces - pwm. avalon_model Test-Bench avalon_pwm Quartus II project - Avalon pwm. PWM : Pulse Width Modulation. Required Register : 8 bit duty, 8 bit div(period) Why 8 Bit? : Computer Architecture 에서 8bit CPU라고 하면 ALU, 레지스터, 데이터 버스 등의 처리 단위가 8비트로 된 CPU를 말한다. Imbedded System 과 lrsfe.tistory.com Simulation waveform Board Verificaton > niosII.qsys Pin Planner Eclipse Level 1,2 Intensity Level 3,4 Intensity
Avalon Memory-Mapped Interfaces - Register. Master > Slave Slave > Master My_reg mp_addr mp_bEn mp_rD mp_wR mp_wData mp_rData mp_waitR addr bEn rD wR wData waitR rData rMy_reg My_reg Implementation. avalon_model Test-Bench Tcl Simulation waveform mp_writedata > my_reg > mp_readdata = rData Board Verification > niosII.qsys My_reg_0 Base address : 0x0000_1088 Nios II Console
Avalon Memory-Mapped Interfaces. Avalon MM Interface 1. IP 블록 및 peripherals 간 데이터 교환 단순화 / 호환성 2. Burst transfer 데이터 연속 전송(처리량 최적화) 3. FPGA, SoC에 통합하여 시스템 구축 4. 실시간 응답, 동기화를 제공하여 IP 블록 간 안정적인 데이터 전송 가능 > 데이터 전송 간소화 및 데이터 흐름의 효율적인 관리 > Design complexity와 개발 프로세스의 단순화 Avalon Data-Bus 데이터를 효과적으로 처리 Using Data-Bu..
Avalon - Nios II processor : GPIO API function. alt_iic_isr_register( KEY_IRQ_INTERRUPT_CONTROLLER_ID , KEY_IRQ , (void *)key_isr , (void *)&button_val , 0x0); interrupt signal 이 발생하면 key_isr function을 불러온다. 인터럽트 발생 시 ISR에서는 관련 데이터를 저장 또는 처리 후 인터럽트 클리어를 해줘야함. - printf, uart 통신 등 다른 동작은 불가. interrupt enable. IOWR_ALTERA_AVALON_PIO_IRQ_MASK(KEY_BASE, 0x7); // 0x4|0x2|0x1 IOWR_ALTERA_AVALON_PIO_EDGE_CAP(KEY_BASE, (0x4 | 0x2 | 0x1))..
Quartus II project - Nios II(Avalon Model) Avalon_Model, r/w `timescale 1ns/1ns // Avalon Bus Model for Simulation module avalon_model ( input clk, input rst, // avalon Bus output reg [31:0] mp_addr, output reg [ 3:0] mp_bEn, output reg mp_rD, output reg mp_wR, input mp_waitR, input [31:0] mp_rData, output reg [31:0] mp_wData ); parameter FF = 1; // delay initial begin mp_addr = 32'hx; mp_bEn = 4'bx; mp_rD = 1'b0; mp_wR = 1'b0; mp_wData ..
Microelectronics - Load Switch. in M4 M3 Gate M3 I Load out2 H ON L ON O VCC L OFF M3 Gate Floating → 0인지 1인지 몰랑 → 오동작 위험 in M4 M3 Gate M3 I Load out2 H ON L ON O VCC L OFF H OFF X 0 M3을 pass TR, M4를 control TR이라고 한다. control TR이 없어도 출력은 동일하게 5V가 출력된다. 하지만 이러한 방식은 VCC전압이 제어전압과 같거나 낮은 경우에만 적용 가능하다. VCC = 12V, 제어전압이 5V이면 제어전압이 H이든 L이든 Vgs는 항상 Vto를 넘어서는 제어전압이 걸리므로 항상 ON이다. 또한, M3의 Drain과 Gate 사이의 기생 커패시터로 인한 Gate Current를 control..