일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- KEYPAD
- uart 통신
- BASYS3
- behavioral modeling
- Linked List
- i2c 통신
- java
- test bench
- structural modeling
- soc 설계
- Edge Detector
- vivado
- verilog
- prescaling
- Algorithm
- gpio
- atmega 128a
- hc-sr04
- dataflow modeling
- DHT11
- half adder
- D Flip Flop
- stop watch
- ring counter
- Recursion
- pwm
- LED
- ATMEGA128A
- Pspice
- FND
- Today
- Total
목록RTL Design/Verilog 연습 (27)
거북이처럼 천천히
1. Parameter를 통해 다용도로 사용 가능한 PWM 컨트롤 모듈 설계 PWM는 LED 뿐만 아니라 모터 제어에도 사용하며, LED는 10kHz, 모터는 100Hz 주파수를 갖는 PWM을 목표로 설계한다.이를 위해 parameter를 사용하여 다용도로 사용 가능한 PWM Control Module를 설계하도록 하겠다.아래 소스 코드에 대한 자세한 설명은 아래 게시글을 참고하길 바란다.https://jbhdeve.tistory.com/286// PWM Duty ratio 128module PWM_Duty_Ratio_cntr( input clk, reset_p, input [6:0] duty" data-og-host="jbhdeve.tistory.com" data-og-source-url="https:..
1. LED의 밝기를 128단계로 나누어 컨트롤하기이번에는 LED를 켜진 상태를 유지하면서 LED의 밝기를 128단계로 분리 한뒤, 시간 지남에 따라 점차 밝아지도록 설계해보도록 하겠다.소스 코드에 대한 자세한 설명은 아래 게시글을 참고하길 바란다.https://jbhdeve.tistory.com/285// Duty ratio 128 step controlmodule PWM_prescaling_128_Contro" data-og-host="jbhdeve.tistory.com" data-og-source-url="https://jbhdeve.tistory.com/285" data-og-url="https://jbhdeve.tistory.com/285" data-og-image="https://scrap.k..
1. LED의 밝기를 128단계로 나누어 컨트롤 하기LED을 계속 있되, LED의 밝기를 128단계로 나누어 컨트롤하기 위해 10kHz 주파스를 갖는 PWM을 만든 뒤, PWM의 duty ratio를 128단계로 나누어 컨트롤 할 수 있는 모듈을 설계하고자 한다.이를 위해 주기가 10ns인 Clock Pulse를 128분주화, 78분주화 하고자 한다.소스 코드에 대한 자세한 설명은 아래 게시글을 참고하길 바란다.https://jbhdeve.tistory.com/285// Duty ratio 128 step controlmodule PWM_prescaling_128_Contro" data-og-host="jbhdeve.tistory.com" data-og-source-url="https://jbhdeve...
1. Duty ratio를 128단계로 나눈 10kHz PWM 설계LED의 밝기를 128단계로 나누어 컨트롤하기 위해 Duty ratio를 128단계로 나누어 컨트롤 할 수 있는 PWM 설계한다.Duty ratio를 128단계 나누어 컨트롤하기 위해서 128 분주화, 78.125 분주화, 총 2번의 분주를 할 것이다.Duty ratio를 128단계로 나눈 10kHz PWM에 대한 자세한 설명은 아래 게시글 참고하길 바란다.https://jbhdeve.tistory.com/284 Verilog RTL 설계(7월 31일 - 3, PWM - 3)1. LED의 밝기를 128단계로 나누어 컨트롤하기.이번에는 LED의 밝기를 128단계로 나누어 컨트롤 할 수 있도록 모듈 설계해보도록 하겠다.이를 통해 "왜 2단계..
1. DHT11 온도, 습도 센서이번 구현은 DHT11로부터 온도, 습도 데이터를 받아 Basys3의 FND로 출력하도록 구현하겠다.'DHT11 - 2' 게시글과의 차이점은 "DHT11과 Basys3 간 통신 과정에서 문제 발생했을 경우에 대한 예외 처리 했는지 여부" 차이를 갖는다. DHT11 구현 소스 코드에 대한 자세한 설명은 아래 게시글을 참고하길 바란다.https://jbhdeve.tistory.com/296 Verilog RTL 설계(7월 23일 - 3, DHT11 구현 (2) )1. Top module of DHT11 이전 게시글에서 구현한 dht11_cntr module를 실행시키기 위해 top module를 만들어서 실행해보도록 하겠다.dht11_cntr module 에 대한 게시글은 아..
1. Duty ratio를 100단계로 나눈 10kHz PWM 설계Clock Pulse (Period = 10ns)를 100분주화를 2번하여 10kHz PWM을 설계하도록 하겠다.해당 PWM은 Duty ratio를 총 100단계로 나누어 원하는 duty ratio를 갖는 PWM을 만들 수 있다.소스 코드 및 PWM에 대한 자세한 설명은 아래 게시글을 참고하길 바란다.https://jbhdeve.tistory.com/283 Verilog RTL 설계(7월 31일 - 2, PWM - 2)1. 다이오드가 연속적으로 켜져 있는 상태로 보이기 위해서는 10kHz Pulse wave를 줘야 한다.다이오드가 사람 눈으로 보았을 때, 연속적으로 켜져 있는 상태로 보여주기 위해서는 10kHz 주파수를 갖는jbhdeve...
1. 4X4 Matrix KeyPad (FSM 형식)이번에는 FSM (= Finite State Machine) 형식으로 KeyPad를 구현해보도록 하겠다.아래와 같이 5가지 상태로 정의하였다.- S_SCAN0 ~ S_SCAN3 : 0번째 행부터 3번째 행까지를 10msec 주기로 순회하면서 버튼이 눌렀는지 여부 확인하는 상태 - S_KEY_PROCESS : 버튼이 눌렀을 경우, 어떤 버튼이 눌렀는지를 확인하고, 이를 출력으로 내보내는 상태소스 코드에 대한 자세한 설명은 아래 게시글을 참고하길 바란다.https://jbhdeve.tistory.com/275 Verilog RTL 설계(7월 22일 - 2, FSM 형식으로 Keypa..
1. 4X4 Matrix KeyPad 전체적인 코드에 대한 설명은 아래 게시글 참고하길 바란다.https://jbhdeve.tistory.com/274 Verilog RTL 설계(7월 22일 - 1, 4X4 Matrix Keyboard - 1)1. 4X4 Matrix Keyboard4X4 Matrix Keyboard는 다음과 같은 회로도를 같는다.Row와 Column간에 회로 연결은 16개의 Switch간에 연결되어 있다. 2. 어떻게 버튼이 눌렀는지를 확인하는가?Row 값(R1, R2, R3, R4)들이jbhdeve.tistory.com // Edge detector module edge_detector ( input clk, reset_p, input cp, output p..