
Sisällysluettelo:
2025 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2025-01-23 14:42

UART on lyhenne sanoista Universal Asynchronous Receiver Transmitter. Se on suosituin ja yksinkertaisin sarjaliikenneprotokolla. Tässä ohjeessa opit suunnittelemaan UART -moduulin VHDL -muodossa.
Vaihe 1: Mikä on UART?
Prosessorit tai ohjaimet käyttävät tavallisesti UART -viestintää kommunikoidakseen eri oheislaitteiden kanssa. Se on yksinkertainen ja nopea sarjaliikenne. Koska UART on vähimmäisvaatimus lähes kaikissa suorittimissa, ne on yleensä suunniteltu pehmeiksi IP-ytimiksi VHDL: ssä tai Verilogissa uudelleenkäytettävyyden ja integroinnin helpottamiseksi.
Vaihe 2: Tekniset tiedot
Suunniteltu UART: n tekniset tiedot on esitetty alla:
* Vakio UART -signaalit.
* Konfiguroitava tiedonsiirtonopeus 600-115200.
* Näytteenotto = 8x @vastaanotin
* FPGA -testattu muotoilu - Xilinx Artix 7 -levyllä.
* Testattu UART -oheislaitteilla, Hyperterminal onnistuneesti - kaikki baudrat
Vaihe 3: Suunnittelutapa
-
Suunnittelemme 3 moduulia, jotka integroimme myöhemmin UART: n loppuun saattamiseksi.
- Lähetinmoduuli: huolehtii sarjatiedonsiirroista
- Vastaanotinmoduuli: huolehtii sarjatiedon vastaanotosta
- Baud -generaattorimoduuli: huolehtii baudikellon luomisesta.
- Baud -generaattorimoduuli on dynaamisesti konfiguroitavissa. Se luo kaksi baudikelloa pääkellosta halutun nopeuden mukaan. Toinen lähettimelle ja toinen vastaanottimelle.
- Vastaanotinmoduuli käyttää näytteenottotaajuutta 8x minimoidakseen virheen todennäköisyyden vastaanotossa, eli vastaanottimen baudikello on 8x lähettimen baudikello.
- Ohjaussignaalit ohjaamaan lähetystä ja vastaanottoa sekä keskeytyssignaalia.
- Vakio UART -sarjaliitäntä, jossa ei ole pariteettibittiä, yksi pysäytys- ja aloitusbitti, 8 databittiä.
- Rinnakkaisliitäntä kommunikoidakseen isännän eli prosessorin tai ohjaimen kanssa, joka syöttää ja vastaanottaa rinnakkaista dataa UARTiin ja sieltä.
Vaihe 4: Simulaatiotulokset

Vaihe 5: Liitetyt tiedostot
* UART -lähetinmoduulin -vhd -tiedosto
* UART -vastaanotinmoduuli - vhd -tiedosto
* Baud -generaattorimoduuli - vhd -tiedosto
* UART -moduuli - Päämoduuli, joka integroi yllä olevat moduulit - vhd -tiedosto
* Täysi dokumentaatio UART IP Core - pdf
Jos sinulla on kysyttävää, ota rohkeasti yhteyttä minuun:
Mitu Raj
seuraa minua:
Jos sinulla on kysyttävää, ota yhteyttä: [email protected]
Suositeltava:
Yksinkertaisen nelisuuntaisen yhdistetyn välimuistiohjaimen suunnittelu VHDL: ssä: 4 vaihetta

Yksinkertaisen nelisuuntaisen yhdistetyn välimuistiohjaimen suunnittelu VHDL: ssä: Edellisessä ohjeessani näimme kuinka suunnitella yksinkertainen suoraan kartoitettu välimuistiohjain. Tällä kertaa mennään askel eteenpäin. Suunnittelemme yksinkertaisen nelisuuntaisen yhdistetyn välimuistiohjaimen. Etu? Vähemmän miss -korkoa, mutta perfo -kustannuksella
Ohjelmoitavan keskeytysohjaimen suunnittelu VHDL: ssä: 4 vaihetta

Ohjelmoitavan keskeytysohjaimen suunnittelu VHDL: ssä: Olen hämmästynyt siitä, millaisia vastauksia saan tästä blogista. Kiitos kaverit vierailustani blogissani ja kannustivat minua jakamaan tietoni kanssanne. Tällä kertaa aion esitellä toisen mielenkiintoisen moduulin suunnittelun, jonka näemme kaikissa SOC -järjestelmissä - Keskeytä C
Yksinkertaisen välimuistiohjaimen suunnittelu VHDL: ssä: 4 vaihetta

Yksinkertaisen välimuistiohjaimen suunnittelu VHDL: ssä: Kirjoitan tämän ohjeellisen, koska minusta oli hieman vaikeaa saada viite -VHDL -koodi oppia ja aloittaa välimuistiohjaimen suunnittelu. Joten suunnittelin välimuistiohjaimen itse tyhjästä ja testasin sen onnistuneesti FPGA: lla. Minulla on p
I2C Masterin suunnittelu VHDL: ssä: 5 vaihetta

I2C Masterin suunnittelu VHDL: ssä: Tässä ohjeessa käsitellään yksinkertaisen I2C -masterin suunnittelua VHDL: ssä
SPI Masterin suunnittelu VHDL: ssä: 6 vaihetta

SPI Masterin suunnittelu VHDL: ssä: Tässä ohjeessa aiomme suunnitella SPI Bus Masterin alusta alkaen VHDL: ssä