본문 바로가기

[Harman] 반도체 설계/Quartus

(14)
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..
Quartus II project - Nios II 보호되어 있는 글입니다.
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 과 같이 특수한 기능만을 수행하는 Computing System 에서는 아직도 단가가 싸고 프로그래밍이 편리한 8bit Micro-Controller 가 많이 사용된다. Avalon Bus Read & Write. Avalon PWM. 하드웨어의 올바른 동작을 확인하기 위해 Modelsim으로 먼저 avalon_pwm module의 시뮬레이션을 진행한다. Test ..
Quartus II project - Verilog HDL Design pptx.
Quartus II project - Uart Rx Segment [2]. `include"../simple_uart_tx/simple_uart_tx.v" module simple_uart_rx ( input clk, input reset_n, input rx, output [7:0] rx_data ); localparam IDLE = 0; localparam START = 1; localparam MID = 2; localparam D0 = 3; localparam D1 = 4; localparam D2 = 5; localparam D3 = 6; localparam D4 = 7; localparam D5 = 8; localparam D6 = 9; localparam D7 = 10; localparam STOP = 11; localparam STOP_1 = 12; reg rx_..
Quartus II project - Uart Rx Segment [1]. `include "../lab3_2/seven_segment_cntrl.v" `include "../simple_uart_rx/simple_uart_rx.v" module rx_seg( input clk, input reset_n, input rx, output seg_a, seg_b, seg_c, seg_d, seg_e, seg_f, seg_g, output seg_h, seg_i, seg_j, seg_k, seg_l, seg_m, seg_n ); wire [7:0] rxtx; simple_uart_rx uSimple_rx( .clk(clk), .reset_n(reset_n), .rx(rx), .rx_data(rxtx) ); seven_segment_cntrl uSeven_segment_cntrl1( ..
Quartus II project - Simple Uart Rx. Internal Loop-Back : 이전에 설계했던 SimpleUartTx 의 ASCII code 'X' 를 Rx 가 제대로 수신하는지만 확인한다. (Simulation Only) Clk : DE1 - SoC Board 의 default freqency 는 50Mhz 로 20ns 의 Clock Period 를 가진다. Bit Rate 115200bps 를 만족하기 위해선 1 Bit 를 전송할 때, 8680ns 가 필요하고 20ns 의 주기가 434 cycles 유지되어야 한다. f_det : Uart 는 기본적으로 IDLE 과 STOP 에서 1, START 에서 0 의 값을 가진다. Clock Signal 이 존재하는 않는 Asychronous system 에서 Data 의 송수신이 이뤄지기 위해 ST..
Quartus II Project - Falling Edge Detection. d_ff 을 통해서 Falling Edge 를 파악하고, Data 송수신의 Start bit 를 확인할 수 있다. module fdet( input clk, input reset_n, input rx, output f_det ); reg rx_reg; reg rx_delay1; reg rx_delay2; always @(posedge clk, negedge reset_n) begin if(!reset_n) begin rx_delay1