VHDLwhiz-லோகோ

VHDLwhiz UART சோதனை இடைமுக ஜெனரேட்டர்

VHDLwhiz-UART-சோதனை-இடைமுகம்-ஜெனரேட்டர்-தயாரிப்பு

தயாரிப்பு தகவல்

விவரக்குறிப்புகள்:

  • தயாரிப்பு பெயர்: VHDL UART சோதனை இடைமுக ஜெனரேட்டரைப் பதிவு செய்கிறது
  • பதிப்பு: 1.0.4
  • தேதி: ஆகஸ்ட் 18, 2024
  • ஆசிரியர்: ஜோனாஸ் ஜூலியன் ஜென்சன்
  • தயாரிப்பு URL: தயாரிப்பு இணைப்பு
  • தொடர்பு மின்னஞ்சல்: jonas@vhdlwhiz.com

விளக்கம்

இந்த தயாரிப்பு UART ஐப் பயன்படுத்தி FPGA பதிவு மதிப்புகளைப் படிப்பதற்கும் எழுதுவதற்கும் தனிப்பயன் இடைமுகங்களை உருவாக்க உங்களை அனுமதிக்கிறது. உருவாக்கப்பட்ட VHDL தொகுதி மற்றும் பைதான் ஸ்கிரிப்ட் உங்கள் FPGA வடிவமைப்பில் பல்வேறு வகையான பதிவேடுகளுடன் தொடர்பு கொள்ளும் திறனை வழங்குகின்றன.

தேவைகள்

  • பைதான் 3 மொழிபெயர்ப்பாளர்
  • பைசீரியல் தொகுப்பு

நெறிமுறை

இந்த தயாரிப்பு நான்கு கட்டுப்பாட்டு எழுத்துகளைக் கொண்ட தரவு சட்டக நெறிமுறையைப் பயன்படுத்துகிறது:

  • பெயர்: படிக்க_REQ, மதிப்பு: 0x0A – அனைத்து பதிவேடுகளையும் UART வழியாக திருப்பி அனுப்புவதற்கான எழுத்து வரிசையைத் தொடங்க ஹோஸ்டிலிருந்து FPGA க்கு கட்டளையிடவும்.
  • பெயர்: START_எழுது, மதிப்பு: 0x0B – இரு திசைகளிலும் எழுதும் வரிசையின் தொடக்கத்தைக் குறிக்கிறது.
  • பெயர்: END_எழுது, மதிப்பு: 0x0C – எந்த திசையிலும் எழுதும் வரிசையின் முடிவைக் குறிக்கிறது.
  • பெயர்: தப்பித்தல், மதிப்பு: 0x0D – கட்டுப்பாட்டு வார்த்தைகளிலிருந்து தப்பிக்கப் பயன்படுத்தப்படும் எஸ்கேப் எழுத்து.

தயாரிப்பு பயன்பாட்டிற்கான வழிமுறைகள்

ஸ்கிரிப்ட்களை இயக்குதல்

தயாரிப்பைப் பயன்படுத்த, உங்களிடம் Python 3 மற்றும் Pyserial தொகுப்பு நிறுவப்பட்டுள்ளதா என்பதை உறுதிப்படுத்திக் கொள்ளுங்கள். Python 3 இன்டர்பிரெட்டர் மூலம் ஸ்கிரிப்ட்களை இயக்கவும்.

தனிப்பயன் இடைமுகங்களை உருவாக்குதல்

FPGA பதிவு மதிப்புகளைப் படிப்பதற்கும் எழுதுவதற்கும் தனிப்பயன் இடைமுகங்களை உருவாக்க gen_uart_regs.py ஸ்கிரிப்டைப் பயன்படுத்தவும். வெளியீட்டை உருவாக்கும் போது உள்ளீடு மற்றும் வெளியீட்டு பதிவேடுகள் மற்றும் வகைகளின் கலவையை நீங்கள் குறிப்பிடலாம். files.

பதிவேடுகளுடன் தொடர்புகொள்வது

உருவாக்கப்பட்ட VHDL தொகுதி மற்றும் பைதான் ஸ்கிரிப்டைப் பயன்படுத்தி உங்கள் FPGA வடிவமைப்பில் உள்ள எத்தனை பதிவேடுகளிலிருந்தும் நீங்கள் படிக்கலாம் அல்லது எழுதலாம். அணுகக்கூடிய பதிவேடுகளில் std_logic, std_logic_vector, கையொப்பமிடப்பட்ட அல்லது கையொப்பமிடப்படாத போன்ற வகைகள் இருக்கலாம்.

உரிமம்

  • MIT உரிமமானது மூலக் குறியீட்டின் பதிப்புரிமை தேவைகள் மற்றும் பயன்பாட்டு விதிமுறைகளை உள்ளடக்கியது. LICENSE.txt ஐப் பார்க்கவும் file ஜிப்பில் file விவரங்களுக்கு.

சேஞ்ச்லாக்

  • இந்த மாற்றங்கள் திட்டத்தைக் குறிக்கின்றன files, இந்த ஆவணம் அதற்கேற்ப புதுப்பிக்கப்படுகிறது
பதிப்பு கருத்துக்கள்
1.0.0 ஆரம்ப வெளியீடு
1.0.1 uart_regs.py ஆக பைதான் தொகுதியாக இறக்குமதி செய்யும் போது காணாமல் போன «self» குறிப்பு பிழை சரி செய்யப்பட்டது. எழுதத் தவறிய அச்சுப்பொறி விதிவிலக்காக மாற்றப்பட்டது.

இறக்குமதி செய்யப்பட்ட தொகுதியாக இயங்கும் போது கன்சோலில் அச்சிடுவதைத் தவிர்க்கவும்.

1.0.2 அவுட் பயன்முறை பதிவுகள் இல்லாதபோது விவாடோ [சின்த் 8-248] பிழையைச் சரிசெய்யவும்.
1.0.3 விவாடோ லின்டர் எச்சரிக்கையை சரிசெய்யவும்: பதிவேட்டில் இயக்கப்பட்டது

ஒத்திசைவான மீட்டமைப்பு

1.0.4 தவறான வார்த்தையைப் பெறும்போது மூலையில் உள்ள கேஸை சரிசெய்யவும், கடைசி பைட்டாக escape எழுத்தைக் கொண்டு. IDLE க்குத் திரும்பும்போது recv_data_prev_is_escape ஐ அழிக்காததால் அடுத்த வார்த்தையும் இழக்கப்படும்.

gen_uart_regs.py ஸ்கிரிப்ட் இப்போது தனித்துவமான reg பெயர்களை மட்டுமே அனுமதிக்கிறது.

விளக்கம்

  • இந்த ஆவணம் பின்வருவனவற்றை விவரிக்கிறது fileகள் மற்றும் கோப்புறைகள்:
  • gen_uart_regs.py
  • Generated/uart_regs.vhd
  • உருவாக்கப்பட்டது/uart_regs.py
  • உருவாக்கப்பட்டது/instantiation_template.vho
  • rtl/uart_regs_backend.vhd
  • rtl/uart_rx.vhd
  • rtl/uart_tx.vhd
  • demo/lattice_icestick/
  • demo/xilinx_arty_a7_35/
  • demo/xilinx_arty_s7_50/
  • gen_uart_regs.py ஸ்கிரிப்ட் மற்றும் துணை VHDL fileUART ஐப் பயன்படுத்தி பல்வேறு வகைகள் மற்றும் அகலங்களின் FPGA பதிவு மதிப்புகளைப் படிக்கவும் எழுதவும் தனிப்பயன் இடைமுகங்களை உருவாக்க இந்தத் திட்டத்தில் உள்ள கள் உங்களை அனுமதிக்கின்றன.
  • நீங்கள் உருவாக்கிய VHDL தொகுதி மற்றும் பைதான் ஸ்கிரிப்டைப் பயன்படுத்தி உங்கள் வடிவமைப்பில் உள்ள எத்தனை பதிவுகளில் இருந்தும் படிக்கலாம் அல்லது எழுதலாம். UART அணுகக்கூடிய பதிவேடுகள் std_logic, std_logic_vector, கையொப்பமிடப்பட்ட அல்லது கையொப்பமிடப்படாத வகைகளைக் கொண்டிருக்கலாம்.
  • வெளியீட்டை உருவாக்கும் போது உள்ளீடு மற்றும் வெளியீடு பதிவேடுகள் மற்றும் வகைகளின் துல்லியமான கலவையை நீங்கள் தீர்மானிக்கலாம் filegen_uart_regs.py ஸ்கிரிப்டைப் பயன்படுத்துகிறது.
  • பைதான் ஸ்கிரிப்டுகள் ChatGPT செயற்கை நுண்ணறிவு கருவியின் உதவியுடன் ஓரளவு உருவாக்கப்பட்டன, அதே நேரத்தில் VHDL குறியீடு கைவினைப்பொருளாக உள்ளது.

தேவைகள்

  • இந்த திட்டத்தில் உள்ள ஸ்கிரிப்ட்கள் பைதான் 3 மொழிபெயர்ப்பாளரின் மூலம் இயக்கப்பட வேண்டும் மற்றும் பைசீரியல் தொகுப்பு நிறுவப்பட வேண்டும்.
  • நீங்கள் இந்த கட்டளையைப் பயன்படுத்தி Pip வழியாக pyserial ஐ நிறுவலாம்: pip install pyserial

நெறிமுறை

  • வி.எச்.டி.எல் files மற்றும் பைதான் ஸ்கிரிப்ட் நான்கு கட்டுப்பாடுகளுடன் ஒரு தரவு-கட்டமைக்கும் நெறிமுறையைப் பயன்படுத்துகின்றன.
பெயர் மதிப்பு கருத்து
படிக்க_REQ 0x0A எழுதுதலைத் தொடங்க ஹோஸ்டிடமிருந்து FPGA க்கு கட்டளையிடவும்.

அனைத்து பதிவேடுகளையும் UART வழியாக திருப்பி அனுப்புவதற்கான வரிசை.

START_எழுது 0x0B இரண்டில் ஏதேனும் ஒன்றில் எழுதும் வரிசையின் தொடக்கத்தைக் குறிக்கிறது

திசை

END_WRITE 0x0 சி இரு திசைகளிலும் எழுதும் வரிசையின் முடிவைக் குறிக்கிறது
எஸ்கேப் 0x0D START_WRITE மற்றும் END_WRITE குறிப்பான்களுக்கு இடையே தரவுகளாகத் தோன்றும்போது, ​​ESCAPE எழுத்து உட்பட, எந்தக் கட்டுப்பாட்டுச் சொற்களிலிருந்தும் தப்பிக்க எஸ்கேப் எழுத்து பயன்படுத்தப்படுகிறது.

FPGA க்கு அனுப்பப்படும் எந்தத் தவிர்க்கப்படாத READ_REQ பைட்டும் அதன் UART-அணுகக்கூடிய பதிவேடுகளை (உள்ளீடுகள் மற்றும் வெளியீடுகள்) UART வழியாக ஹோஸ்டுக்கு மீண்டும் அனுப்புவதற்கான அறிவுறுத்தலாகும். இந்த கட்டளை பொதுவாக uart_regs.py ஸ்கிரிப்ட் மூலம் மட்டுமே வழங்கப்படுகிறது.
இந்த கட்டளையைப் பெற்றவுடன், FPGA ஆனது அனைத்து பதிவுகளின் உள்ளடக்கத்தையும் ஹோஸ்டுக்கு அனுப்புவதன் மூலம் பதிலளிக்கும். முதலில், உள்ளீடு சமிக்ஞைகள், பின்னர் வெளியீடு சமிக்ஞைகள். அவற்றின் நீளம் 8 பிட்களின் பெருக்கத்தைக் கூட்டவில்லை எனில், கடைசி பைட்டின் கீழ் பிட்கள் பூஜ்ஜியமாக இருக்கும்.
ஒரு எழுதும் வரிசை எப்போதும் START_WRITE பைட்டுடன் தொடங்கி END_WRITE பைட்டுடன் முடிவடைகிறது. அவற்றுக்கிடையே உள்ள எந்த பைட்டுகளும் தரவு பைட்டுகளாகக் கருதப்படுகின்றன. எந்த தரவு பைட்டுகளும் கட்டுப்பாட்டு எழுத்தின் அதே மதிப்பைக் கொண்டிருந்தால், தரவு பைட்டைத் தப்பிக்க வேண்டும். இதன் பொருள் தரவு பைட்டுக்கு முன் கூடுதல் ESCAPE எழுத்தை அனுப்புவதன் மூலம் அது உண்மையில் தரவு என்பதைக் குறிக்கிறது.
தவிர்க்கப்படாத START_WRITE பைட்டுகளின் ஸ்ட்ரீமில் எங்காவது வந்தால், அது எழுதும் வரிசையின் தொடக்கமாகக் கருதப்படுகிறது. uart_regs_backend தொகுதியானது தகவல்தொடர்பு ஒத்திசைவு இல்லாமல் போனால், இந்தத் தகவலை மீண்டும் ஒத்திசைக்கப் பயன்படுத்துகிறது.

gen_uart_regs.py

  • இடைமுகத்தை உருவாக்க நீங்கள் தொடங்க வேண்டிய ஸ்கிரிப்ட் இதுதான். இயக்குவதன் மூலம் நீங்கள் பெறக்கூடிய உதவி மெனுவின் ஸ்கிரீன்ஷாட் கீழே உள்ளது: python gen_uart_regs.py -hVHDLwhiz-UART-சோதனை-இடைமுகம்-ஜெனரேட்டர்-படம்-1
  • தனிப்பயன் இடைமுகத்தை உருவாக்க, நீங்கள் விரும்பும் ஒவ்வொரு UART கட்டுப்படுத்தக்கூடிய பதிவேடுகளுடன் ஸ்கிரிப்டை இயக்க வேண்டும். கிடைக்கும் வகைகள் std_logic, std_logic_vector, unsigned மற்றும் signed.
  • இயல்புநிலை பயன்முறை (திசை) உள்ளது மற்றும் பதிவு நீளமாக இல்லாவிட்டால் இயல்புநிலை வகை std_logic_vector ஆகும்: 1. பிறகு, அது std_logic க்கு இயல்புநிலையாக இருக்கும்.
  • எனவே, நீங்கள் ஒரு std_logic உள்ளீட்டு சமிக்ஞையை உருவாக்க விரும்பினால், பின்வரும் வாதங்களில் ஏதேனும் ஒன்றை நீங்கள் பயன்படுத்தலாம்:
  • my_sl=1
  • my_sl=1:in
  • my_sl=1:in:std_logic
  • மேலே உள்ள அனைத்து வகைகளும் ஸ்கிரிப்ட் இந்த UART-அணுகக்கூடிய சமிக்ஞையை உருவாக்கும்:VHDLwhiz-UART-சோதனை-இடைமுகம்-ஜெனரேட்டர்-படம்-2
  • வெவ்வேறு திசைகள், நீளம் மற்றும் வகைகளின் பல பதிவேடுகளுடன் ஒரு இடைமுகத்தை உருவாக்க வாதங்களுடன் ஸ்கிரிப்டை இயக்குவோம்.VHDLwhiz-UART-சோதனை-இடைமுகம்-ஜெனரேட்டர்-படம்-3

உருவாக்கியது files

  • gen_uart_regs.py ஸ்கிரிப்ட்டின் வெற்றிகரமான இயக்கமானது மூன்றில் உருவாக்கப்பட்ட ஒரு வெளியீட்டு கோப்புறையை உருவாக்கும். fileகீழே பட்டியலிடப்பட்டுள்ளது. அவை ஏற்கனவே இருந்தால், அவை மேலெழுதப்படும்.
  • Generated/uart_regs.vhd
  • உருவாக்கப்பட்டது/uart_regs.py
  • உருவாக்கப்பட்டது/instantiation_template.vho
  • uart_regs.vhd
  • இது ஸ்கிரிப்ட் மூலம் உருவாக்கப்பட்ட தனிப்பயன் இடைமுக தொகுதி. UART ஐப் பயன்படுத்தி நீங்கள் கட்டுப்படுத்த விரும்பும் பதிவேடுகளை அணுகக்கூடிய உங்கள் வடிவமைப்பில் அதை நீங்கள் உடனடியாகச் செய்ய வேண்டும்.
  • “– UART அணுகக்கூடிய பதிவேடுகள்” பகுதிக்கு மேலே உள்ள அனைத்தும் ஒவ்வொரு uart_regs தொகுதிக்கும் ஒரே மாதிரியாக இருக்கும், அதே சமயம் அந்த வரிக்கு கீழே உள்ள போர்ட் சிக்னல்களின் கலவை ஜெனரேட்டர் ஸ்கிரிப்ட்டுக்கு கொடுக்கப்பட்ட வாதங்களைப் பொறுத்தது.
  • கீழே உள்ள பட்டியல் uart_regs தொகுதிக்கான உட்பொருளைக் காட்டுகிறது, இதன் விளைவாக உருவாக்க கட்டளை exampgen_uart_regs.py பிரிவில் காட்டப்பட்டுள்ளதுVHDLwhiz-UART-சோதனை-இடைமுகம்-ஜெனரேட்டர்-படம்-4
  • நீங்கள் uart_rx சிக்னலை ஒத்திசைக்க தேவையில்லை, அது uart_rx இல் கையாளப்படுகிறது. தொகுதி.
  • தொகுதி வாசிப்பு கோரிக்கையைப் பெறும்போது, ​​தற்போதைய கடிகார சுழற்சியில் உள்ள அனைத்து உள்ளீடு மற்றும் வெளியீட்டு சமிக்ஞைகளின் மதிப்புகளையும் அது கைப்பற்றும். உடனடி ஸ்னாப்ஷாட் UART மூலம் ஹோஸ்டுக்கு அனுப்பப்படும்.
  • எழுதுதல் நிகழும்போது, ​​அனைத்து வெளியீட்டுப் பதிவேடுகளும் ஒரே கடிகாரச் சுழற்சியில் புதிய மதிப்புகளுடன் புதுப்பிக்கப்படும். வெளியீட்டு சமிக்ஞை மதிப்புகளை தனித்தனியாக மாற்ற முடியாது.
  • இருப்பினும், uart_regs.py ஸ்கிரிப்ட், அனைத்துப் பதிவேடுகளின் தற்போதைய மதிப்புகளை மீண்டும் படிப்பதன் மூலம் தேர்ந்தெடுக்கப்பட்ட வெளியீடுகளை மட்டுமே புதுப்பிக்க பயனரை அனுமதிக்கிறது. இது புதுப்பிக்கப்பட்டவை உட்பட அனைத்து மதிப்புகளையும் மீண்டும் எழுதுகிறது.
  • uart_regs.py
  • உருவாக்கப்பட்ட/uart_regs.py file uart_regs VHDL தொகுதியுடன் இணைந்து உருவாக்கப்படுகிறது மற்றும் அதன் தலைப்பில் தனிப்பயன் பதிவுத் தகவலைக் கொண்டுள்ளது. file. இந்த ஸ்கிரிப்ட் மூலம், உங்கள் தனிப்பயன் பதிவேடுகளில் இருந்து எளிதாகப் படிக்கலாம் அல்லது எழுதலாம்.

உதவி மெனு

  • உதவி மெனுவை அச்சிட python uart_regs.py -h என தட்டச்சு செய்க:VHDLwhiz-UART-சோதனை-இடைமுகம்-ஜெனரேட்டர்-படம்-5

UART போர்ட்டை அமைத்தல்

  • -c சுவிட்சைப் பயன்படுத்தி UART போர்ட்டை அமைப்பதற்கான விருப்பங்கள் ஸ்கிரிப்ட்டில் உள்ளன. இது விண்டோஸ் மற்றும் லினக்ஸில் வேலை செய்கிறது. உதவி மெனுவில் பட்டியலிடப்பட்டுள்ள கிடைக்கக்கூடிய போர்ட்டுகளில் ஒன்றில் இதை அமைக்கவும். இயல்புநிலை போர்ட்டை அமைக்க, நீங்கள் uart_regs.py ஸ்கிரிப்ட்டில் UART_PORT மாறியையும் திருத்தலாம்.

பட்டியல் பதிவுகள்

  • பதிவு மேப்பிங் பற்றிய தகவல்கள் uart_regs.py ஸ்கிரிப்ட்டின் தலைப்பில் gen_uart_regs.py ஸ்கிரிப்ட்டால் வைக்கப்பட்டுள்ளன. கீழே காணப்படுவது போல், -l சுவிட்சைப் பயன்படுத்தி கிடைக்கக்கூடிய பதிவேடுகளை நீங்கள் பட்டியலிடலாம். இது ஒரு உள்ளூர் கட்டளை மற்றும் இலக்கு FPGA உடன் தொடர்பு கொள்ளாது.VHDLwhiz-UART-சோதனை-இடைமுகம்-ஜெனரேட்டர்-படம்-6

பதிவுகளுக்கு எழுதுதல்

  • -w சுவிட்சைப் பயன்படுத்தி நீங்கள் எந்த அவுட் மோட் ரெஜிஸ்டர்களுக்கும் எழுதலாம். கீழே காட்டப்பட்டுள்ளபடி, பதிவேடு பெயரைத் தொடர்ந்து “=” மற்றும் பைனரி, ஹெக்ஸாடெசிமல் அல்லது தசம மதிப்பாக கொடுக்கப்பட்ட மதிப்பை வழங்கவும்.VHDLwhiz-UART-சோதனை-இடைமுகம்-ஜெனரேட்டர்-படம்-7
  • VHDL செயல்படுத்தலுக்கு ஸ்கிரிப்ட் அனைத்து வெளியீட்டு பதிவேடுகளையும் ஒரே நேரத்தில் எழுத வேண்டும் என்பதை நினைவில் கொள்ளவும். எனவே, நீங்கள் முழுமையான வெளியீட்டு பதிவேடுகளைக் குறிப்பிடவில்லை என்றால், ஸ்கிரிப்ட் முதலில் இலக்கு FPGA இலிருந்து ஒரு வாசிப்பைச் செய்து, பின்னர் காணாமல் போனவற்றுக்கு அந்த மதிப்புகளைப் பயன்படுத்தும். இதன் விளைவாக குறிப்பிட்ட பதிவேடுகள் மட்டுமே மாறும்.
  • நீங்கள் எழுதும் போது, ​​அனைத்து குறிப்பிட்ட பதிவேடுகளும் ஒரே கடிகார சுழற்சியில் மாறும், UART மூலம் பெறப்பட்டவுடன் அல்ல.

பதிவேடுகளைப் படித்தல்

  • கீழே காட்டப்பட்டுள்ளபடி அனைத்து பதிவு மதிப்புகளையும் படிக்க -r சுவிட்சைப் பயன்படுத்தவும். மஞ்சள் நிறத்தில் குறிக்கப்பட்ட மதிப்புகள், முந்தைய எழுத்து முன்னதில் நாம் மாற்றிய மதிப்புகள்ampleVHDLwhiz-UART-சோதனை-இடைமுகம்-ஜெனரேட்டர்-படம்-8
  • ஒவ்வொரு வாசிப்பும் அனைத்து உள்ளீடு மற்றும் வெளியீடு பதிவேடுகளின் உடனடி ஸ்னாப்ஷாட்டைக் காட்டுகிறது. அவர்கள் அனைவரும் எஸ்ampஅதே கடிகார சுழற்சியில் வழிநடத்தப்பட்டது

பிழைத்திருத்தம்

தகவல்தொடர்பு நெறிமுறையை பிழைத்திருத்தம் செய்ய வேண்டுமானால், வேறு ஏதேனும் சுவிட்சுகளுடன் -d சுவிட்சைப் பயன்படுத்தவும். பின்னர், ஸ்கிரிப்ட் அனுப்பப்பட்ட மற்றும் பெறப்பட்ட அனைத்து பைட்டுகளையும் அச்சிடுகிறது tag அவை கட்டுப்பாட்டு எழுத்துகளாக இருந்தால், கீழே காட்டப்பட்டுள்ளது.VHDLwhiz-UART-சோதனை-இடைமுகம்-ஜெனரேட்டர்-படம்-9

பிற பைதான் ஸ்கிரிப்ட்களில் இடைமுகத்தைப் பயன்படுத்துதல்

  • uart_regs.py ஸ்கிரிப்ட் UartRegs வகுப்பைக் கொண்டுள்ளது, அதை நீங்கள் பிற தனிப்பயன் பைதான் ஸ்கிரிப்ட்களில் தொடர்பு இடைமுகமாக எளிதாகப் பயன்படுத்தலாம். வகுப்பை வெறுமனே இறக்குமதி செய்து, அதன் பொருளை உருவாக்கி, கீழே காட்டப்பட்டுள்ளபடி முறைகளைப் பயன்படுத்தத் தொடங்குங்கள்.VHDLwhiz-UART-சோதனை-இடைமுகம்-ஜெனரேட்டர்-படம்-10
  • முறை மற்றும் விளக்கங்கள் மற்றும் திரும்ப மதிப்பு வகைகளுக்கு பைதான் குறியீட்டில் உள்ள டாக்ஸ்ட்ரிங்ஸைப் பார்க்கவும்.

instantiation_template.vho

  • உங்கள் வசதிக்காக uart_regs தொகுதியுடன் உடனடி டெம்ப்ளேட் உருவாக்கப்படுகிறது. குறியீட்டு நேரத்தைச் சேமிக்க, தொகுதி உடனடி மற்றும் சமிக்ஞை அறிவிப்புகளை உங்கள் வடிவமைப்பில் நகலெடுக்கலாம்.VHDLwhiz-UART-சோதனை-இடைமுகம்-ஜெனரேட்டர்-படம்-11VHDLwhiz-UART-சோதனை-இடைமுகம்-ஜெனரேட்டர்-படம்-12

நிலையான RTL files

  • நீங்கள் பின்வருவனவற்றைச் சேர்க்க வேண்டும் fileஉங்கள் VHDL திட்டத்தில் உள்ளதால் அவை uart_regs தொகுதியின் அதே நூலகத்தில் தொகுக்கப்படும்:
  • rtl/uart_regs_backend.vhd
  • rtl/uart_rx.vhd
  • rtl/uart_tx.vhd
  • uart_regs_backend மாட்யூல், பதிவுத் தரவை உள்ளேயும் வெளியேற்றும் வரையறுக்கப்பட்ட-நிலை இயந்திரங்களைச் செயல்படுத்துகிறது. இது ஹோஸ்டுடன் UART தொடர்பைக் கையாள uart_rx மற்றும் uart_tx தொகுதிகளைப் பயன்படுத்துகிறது.

டெமோ திட்டங்கள்

  • ஜிப்பில் மூன்று டெமோ திட்டங்கள் உள்ளன file. வெவ்வேறு பலகைகள் மற்றும் சில பெரிய, உள் பதிவேடுகளில் உள்ள சாதனங்களைக் கட்டுப்படுத்த அவை உங்களை அனுமதிக்கின்றன.
  • டெமோ கோப்புறைகளில் முன்-உருவாக்கப்பட்ட uart_regs.vhd மற்றும் uart_regs.py ஆகியவை அடங்கும் fileஅந்த டிசைன்களுக்காக பிரத்யேகமாக உருவாக்கப்பட்டவை.

லட்டு iCEstick

  • demo/icecube2_icestick கோப்புறையில் Lattice iCEstick FPGA போர்டுக்கான பதிவு அணுகல் டெமோ செயல்படுத்தல் உள்ளது.
  • செயல்படுத்தல் செயல்முறையை இயக்க, demo/lattice_icestick/icecube2_proj/uart_regs_sbt.project ஐத் திறக்கவும் file Lattice iCEcube2 வடிவமைப்பு மென்பொருளில்.
  • iCEcube2 GUI இல் திட்டத்தை ஏற்றிய பிறகு, நிரலாக்க பிட்மேப்பை உருவாக்க Tools→Run All என்பதைக் கிளிக் செய்யவும். file.
  • உருவாக்கப்பட்ட பிட்மேப்புடன் FPGA ஐ உள்ளமைக்க, Lattice Diamond Programmer Standalone கருவியைப் பயன்படுத்தலாம். file. டயமண்ட் புரோகிராமர் திறக்கும் போது, ​​வரவேற்பு உரையாடல் பெட்டியில் ஏற்கனவே உள்ள புரோகிராமர் திட்டத்தை திற என்பதைக் கிளிக் செய்யவும்.
  • திட்டத்தைத் தேர்ந்தெடுக்கவும் file Zip இல் காணப்படும்: demo/lattice_icestick/diamond_programmer_project.xcf மற்றும் சரி என்பதைக் கிளிக் செய்யவும்.VHDLwhiz-UART-சோதனை-இடைமுகம்-ஜெனரேட்டர்-படம்-13
  • திட்டம் ஏற்றப்பட்ட பிறகு, மூன்று புள்ளிகளைக் கிளிக் செய்யவும் File மேலே காட்டப்பட்டுள்ளபடி, பெயர் நெடுவரிசை. பிட்மேப்பைத் தேர்ந்தெடுக்க உலாவவும் file நீங்கள் iCEcube2 இல் உருவாக்கியது
  • டெமோ/லட்டிஸ்_ஐஸ்டிக்/ஐஸ்க்யூப்2_ப்ரோஜ்/uart_regs_Implmnt/sbt/outputs/bitmap/top_icestick_bitmap.bin
  • இறுதியாக, iCEstick போர்டு உங்கள் கணினியில் USB போர்ட்டில் செருகப்பட்டிருந்தால், SPI ஃபிளாஷ் நிரல் செய்ய Design→Program ஐத் தேர்ந்தெடுத்து FPGA ஐ உள்ளமைக்கவும்.
  • இப்போது நீங்கள் uart_regs.py பிரிவில் விவரிக்கப்பட்டுள்ளபடி demo/lattice_icestick/uart_regs.py ஸ்கிரிப்டைப் பயன்படுத்தி பதிவேடுகளைப் படிக்கவும் எழுதவும் தொடரலாம்.

Xilinx டிஜிலென்ட் ஆர்டி A7-35T

  • Demo/arty_a7_35 கோப்புறையில் Artix-7 35T Arty FPGA மதிப்பீட்டுக் கருவிக்கான டெமோ செயல்படுத்தலைக் காணலாம்.
  • விவாடோவைத் திறந்து பிரித்தெடுக்கப்பட்ட இடத்திற்கு செல்லவும் fileGUI இடைமுகத்தின் கீழே காணப்படும் Tcl கன்சோலைப் பயன்படுத்துகிறது. டெமோ திட்ட கோப்புறையை உள்ளிட இந்த கட்டளையை உள்ளிடவும்:
  • சிடி /டெமோ/arty_a7_35/vivado_proj/
  • Vivado திட்டத்தை மீண்டும் உருவாக்க create_vivado_proj.tcl Tcl ஸ்கிரிப்டை இயக்கவும்:
  • ஆதாரம் ./create_vivado_proj.tcl
  • அனைத்து செயல்படுத்தல் படிகளையும் இயக்கவும் மற்றும் நிரலாக்க பிட்ஸ்ட்ரீமை உருவாக்கவும் பக்கப்பட்டியில் பிட்ஸ்ட்ரீமை உருவாக்கு என்பதைக் கிளிக் செய்யவும் file.
  • இறுதியாக, திற வன்பொருள் மேலாளரைக் கிளிக் செய்து, GUI மூலம் FPGA ஐ நிரல் செய்யவும்.
  • uart_regs.py பிரிவில் விவரிக்கப்பட்டுள்ளபடி demo/arty_a7_35/uart_regs.py ஸ்கிரிப்டைப் பயன்படுத்தி இப்போது நீங்கள் பதிவேடுகளைப் படிக்கவும் எழுதவும் தொடரலாம்.

Xilinx டிஜிலண்ட் ஆர்டி S7-50

  • Demo/arty_s7_7 கோப்புறையில் Arty S7: Spartan-50 FPGA டெவலப்மெண்ட் போர்டிற்கான டெமோ செயல்படுத்தலைக் காணலாம்.
  • விவாடோவைத் திறந்து பிரித்தெடுக்கப்பட்ட இடத்திற்கு செல்லவும் fileGUI இடைமுகத்தின் கீழே காணப்படும் Tcl கன்சோலைப் பயன்படுத்துகிறது. டெமோ திட்ட கோப்புறையை உள்ளிட இந்த கட்டளையை உள்ளிடவும்:
  • சிடி /டெமோ/arty_s7_50/vivado_proj/
  • Vivado திட்டத்தை மீண்டும் உருவாக்க create_vivado_proj.tcl Tcl ஸ்கிரிப்டை இயக்கவும்:
  • ஆதாரம் ./create_vivado_proj.tcl
  • அனைத்து செயல்படுத்தல் படிகளையும் இயக்கவும் மற்றும் நிரலாக்க பிட்ஸ்ட்ரீமை உருவாக்கவும் பக்கப்பட்டியில் பிட்ஸ்ட்ரீமை உருவாக்கு என்பதைக் கிளிக் செய்யவும் file.
  • இறுதியாக, திற வன்பொருள் மேலாளரைக் கிளிக் செய்து, GUI மூலம் FPGA ஐ நிரல் செய்யவும்.
  • uart_regs.py பிரிவில் விவரிக்கப்பட்டுள்ளபடி demo/arty_s7_50/uart_regs.py ஸ்கிரிப்டைப் பயன்படுத்தி இப்போது நீங்கள் பதிவேடுகளைப் படிக்கவும் எழுதவும் தொடரலாம்.

செயல்படுத்தல்

  • குறிப்பிட்ட செயல்படுத்தல் தேவைகள் எதுவும் இல்லை.

கட்டுப்பாடுகள்

  • இந்த வடிவமைப்பிற்கு குறிப்பிட்ட நேரக் கட்டுப்பாடுகள் தேவையில்லை, ஏனெனில் UART இடைமுகம் மெதுவாக உள்ளது மற்றும் ஒத்திசைவற்ற இடைமுகமாக கருதப்படுகிறது.
  • uart_regs தொகுதிக்கான uart_rx உள்ளீடு uart_rx தொகுதிக்குள் ஒத்திசைக்கப்படுகிறது. எனவே, இது உயர்மட்ட தொகுதியில் ஒத்திசைக்கப்பட வேண்டியதில்லை.

தெரிந்த பிரச்சினைகள்

  • உங்கள் FPGA கட்டமைப்பு இயல்புநிலை பதிவு மதிப்புகளை ஆதரிக்கிறதா என்பதைப் பொறுத்து, தொகுதியைப் பயன்படுத்துவதற்கு முன்பு அதை மீட்டமைக்க வேண்டியிருக்கும்.

மேலும் தகவல்

அடிக்கடி கேட்கப்படும் கேள்விகள்

கே: UART சோதனை இடைமுக ஜெனரேட்டரின் நோக்கம் என்ன?

A: UART சோதனை இடைமுக ஜெனரேட்டர், UART தொடர்பைப் பயன்படுத்தி FPGA பதிவு மதிப்புகளுடன் தொடர்பு கொள்ள தனிப்பயன் இடைமுகங்களை உருவாக்க அனுமதிக்கிறது.

கே: பைசீரியல் தொகுப்பை எவ்வாறு நிறுவுவது?

A: நீங்கள் Pip வழியாக Pyserial ஐ நிறுவலாம்: pip install pyserial

ஆவணங்கள் / ஆதாரங்கள்

VHDLwhiz UART சோதனை இடைமுக ஜெனரேட்டர் [pdf] பயனர் கையேடு
UART சோதனை இடைமுக ஜெனரேட்டர், சோதனை இடைமுக ஜெனரேட்டர், இடைமுக ஜெனரேட்டர், ஜெனரேட்டர்

குறிப்புகள்

கருத்து தெரிவிக்கவும்

உங்கள் மின்னஞ்சல் முகவரி வெளியிடப்படாது. தேவையான புலங்கள் குறிக்கப்பட்டுள்ளன *