본문 바로가기

[Harman] 반도체 설계/Avalon

(6)
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 ..