본문 바로가기

[Nexys4 DDR]10

[Nexys4DDR 프로젝트] SPI Interface (SPI 통신) 안녕하세요. VeriLog입니다. 오늘은 Verilog를 사용해서, SPI 모듈을 설계해보겠습니다. SPI 통신은 Serial 통신의 한 종류로, 최근에 많이 사용되는 방법입니다. SPI는 간단하면서 UART보다 빠르게 통신할 수 있는 방법입니다. SPI의 특징을 간단하게 살펴보면 아래와 같습니다. - 대게 UART보다 빠른 통신을 지원한다. (MHz 단위) - 전이중 방식 통신 (Tx, Rx를 동시에 수행할 수 있다) - 여러 Slave를 가질 수 있다. - 포트: - Serial Clock (SCLK) - Master Out Slave In (MOSI, or SDO) - Master In Slave Out (MISO, or SDI) - Chip Select (CS', or CE') 이번 포스팅에서는 .. 2019. 5. 18.
[Nexys4 DDR프로젝트] Frequency Counter of Periodic Signals Frequency Counter of Periodic Signal with FPGA board Board: Nexys4 DDR pmod Module: Pmod AD1 (AD7476A) Frequency Range: 5Hz ~ 500kHz Amplitude Range: 0V ~ 3.3V This Frequency Counter is able to count periodic signals such as PWM, Sine, and Triangular. AD1 Module communicates with FPGA via SPI Interfaces and this project is designed by using Verilog. It was developed by SeonTaek Oh, Jan Park unde.. 2019. 5. 12.
[Nexys4 DDR프로젝트] Function Generator Function Generator with FPGA board Board: Nexys4 DDR pmod Module: Pmod DA4 (AD5628) This Function Generator generates not only PWM, but also Triangular, Sawtooth and SIne waves. It can change Frequency, Duty Ratio, Amplitude of output signal. Output signal is selected by PC through UART Communication. It was developed by SeonTaek Oh, Jan Park under the supervision of Prof. Young-Keun Kim, for a .. 2019. 4. 15.
[Nexys4DDR 프로젝트] Clock Divider Module 설계 안녕하세요. Verilog 입니다. 오늘은 Clock Divider Module을 설계해보려고 합니다. Nexys4 DDR은 100MHz의 기본 클락을 가지고 있습니다. 하지만, 통신을 사용하거나, 다른 모듈을 사용할 때, 100MHz가 아닌 더 낮은 주파수의 클락을 사용해야 하는 경우가 있습니다. 이런 경우에, 100MHz 클락을 나누어서 사용해야 합니다. 코드를 먼저 보겠습니다. 위의 코드를 보시면 100MHz의 Rising Edge마다 q 값을 하나씩 counting 합니다. q 값이 저희가 지정한 param 값과 같은 값이 되면, clk_out 값을 토글 하는 코드입니다. 여기서 param 값은 아래 수식을 통해서 계산 할 수 있습니다. ---------------------------------.. 2019. 4. 2.