VHDLwhiz-логотип

Генератори интерфейси озмоишии VHDLwhiz UART

VHDLwhiz-UART-озмоиши-интерфейси-генератор-МАХСУЛОТИ

Маълумот оид ба маҳсулот

Мушаххасоти:

  • Номи маҳсулот: VHDL генератори интерфейси санҷиши UART-ро сабт мекунад
  • Версия: 1.0.4
  • Сана: 18 августи соли 2024
  • Муаллиф: Йонас Ҷулиан Ҷенсен
  • Маҳсулот URL: Истиноди маҳсулот
  • Суроғаи почтаи электронӣ: jonas@vhdlwhiz.com

Тавсифи

Ин маҳсулот ба шумо имкон медиҳад, ки интерфейсҳои фармоиширо барои хондан ва навиштани арзишҳои феҳристи FPGA бо истифода аз UART тавлид кунед. Модули тавлидшудаи VHDL ва скрипти Python имкон медиҳад, ки бо намудҳои гуногуни регистрҳо дар тарҳрезии FPGA-и худ ҳамкорӣ кунанд.

Талабот

  • Тарҷумони Python 3
  • бастаи pyserial

Протокол

Маҳсулот протоколи чаҳорчӯбаи маълумотро бо чор аломати назоратӣ истифода мебарад:

  • Ном: READ_REQ, Арзиш: 0x0A - Фармон аз ҳост ба FPGA барои оғоз кардани пайдарпаии навиштан барои фиристодани ҳама регистрҳо тавассути UART
  • Ном: START_WRITE, Арзиш: 0x0B - оғози пайдарпайии навиштанро дар ҳар ду самт қайд мекунад
  • Ном: END_WRITE, Арзиш: 0x0C - Анҷоми пайдарпайии навиштанро дар ҳар ду самт қайд мекунад
  • Ном: ГУРЕЗ, Арзиш: 0x0D - Аломати фирор барои фирор аз калимаҳои назоратӣ истифода мешавад

Дастурҳои истифодаи маҳсулот

Иҷрои скриптҳо

Барои истифодаи маҳсулот, боварӣ ҳосил кунед, ки шумо Python 3 ва бастаи Pyserial насб кардаед. Скриптҳоро тавассути тарҷумони Python 3 иҷро кунед.

Эҷоди интерфейсҳои фармоишӣ

Скрипти gen_uart_regs.py-ро барои тавлиди интерфейсҳои фармоишӣ барои хондан ва навиштани арзишҳои феҳристи FPGA истифода баред. Ҳангоми тавлиди натиҷа шумо метавонед таркиби регистрҳои воридотӣ ва баромад ва намудҳоро муайян кунед files.

Мулоқот бо регистрҳо

Шумо метавонед бо истифода аз модули тавлидшудаи VHDL ва скрипти Python дар тарҳи FPGA-и худ аз ҳар шумораи регистрҳо хонед ё ба он нависед. Реестрҳои дастрас метавонанд намудҳо дошта бошанд, ба монанди std_logic, std_logic_vector, имзошуда ё беимзо.

Иҷозатнома

  • Иҷозатномаи MIT талаботҳои ҳуқуқи муаллиф ва шартҳои истифодабарии коди сарчашмаро дар бар мегирад. Ба LICENSE.txt муроҷиат кунед file дар Zip file барои тафсилот.

Тағйирот

  • Ин тағйирот ба лоиҳа дахл доранд fileс, ва ин ҳуҷҷат мувофиқан нав карда мешавад
Версия Мулохизахо
1.0.0 Нашри аввал
1.0.1 Ҳангоми воридот ҳамчун uart_regs.py ҳамчун модули Python хатогиҳои истинод ба "худ" ислоҳ карда шуданд. Навиштани чопи ивазшуда ба истиснои

ҳангоми кор ҳамчун модули воридотӣ аз чоп ба консол худдорӣ кунед.

1.0.2 Хатогии Vivado [Synth 8-248] -ро ҳангоми мавҷуд набудани сабти ҳолати берунӣ ислоҳ кунед.
1.0.3 Огоҳии Vivado Linterро ислоҳ кунед: Бақайдгирӣ аз ҷониби идорашаванда фаъол шудааст

аз нав танзимкунии синхронӣ

1.0.4 Ҳангоми қабули калимаи нодуруст бо аломати фирор ҳамчун байти охирин ҳолати кунҷиро ислоҳ кунед. Калимаи навбатӣ низ гум хоҳад шуд, зеро мо ҳангоми баргаштан ба IDLE recv_data_prev_is_escape-ро тоза накардаем.

Скрипти gen_uart_regs.py ҳоло танҳо ба номҳои регҳои ягона иҷозат медиҳад.

Тавсифи

  • Ин ҳуҷҷат чизҳои зеринро тавсиф мекунад files ва ҷузвдонҳо:
  • gen_uart_regs.py
  • genered/uart_regs.vhd
  • genered/uart_regs.py
  • genered/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 files дар ин лоиҳа ба шумо имкон медиҳад, ки интерфейсҳои фармоиширо барои хондан ва навиштани арзишҳои реестри FPGA-и намудҳо ва паҳнои гуногун бо истифода аз UART тавлид кунед.
  • Шумо метавонед модули тавлидшудаи VHDL ва скрипти Python-ро барои хондан ё навиштан ба дилхоҳ шумораи регистрҳо дар тарҳи худ истифода баред. Реестрҳои дастраси UART метавонанд намудҳои std_logic, std_logic_vector, имзошуда ё беимзо дошта бошанд.
  • Ҳангоми тавлиди натиҷа шумо метавонед дар бораи таркиби дақиқи регистрҳои вуруд ва баромад ва намудҳо қарор қабул кунед fileс бо истифода аз скрипти gen_uart_regs.py.
  • Скриптҳои Python қисман бо ёрии асбоби зеҳни сунъии ChatGPT сохта шудаанд, дар ҳоле ки рамзи VHDL дастӣ сохта шудааст.

Талабот

  • Скриптҳои ин лоиҳа бояд тавассути тарҷумони Python 3 иҷро карда шаванд ва бастаи Pyserial насб карда шаванд.
  • Шумо метавонед pyserial-ро тавассути Pip бо истифода аз ин фармон насб кунед: pip install pyserial

Протокол

  • VHDL files ва скрипти Python протоколи чаҳорчӯбаи маълумотро бо чор назорат истифода мебаранд
Ном Арзиш Шарҳ
READ_REQ 0х0А Фармон аз мизбон ба FPGA барои оғози навиштан

пайдарпаии фиристодани ҳамаи регистрҳо тавассути UART

START_НАВИСЕД 0x0B Оғози пайдарпайии навиштанро дар ҳарду ишора мекунад

самт

END_WRITE 0х0С Анҷоми пайдарпайии навиштанро дар ҳар ду самт қайд мекунад
ГУРЕЗЕД 0x0D Аломати фирорӣ барои фирор аз ҳама гуна калимаҳои назоратӣ, аз ҷумла худи аломати ESCAPE, вақте ки онҳо ҳамчун маълумот байни аломатҳои START_WRITE ва END_WRITE пайдо мешаванд, истифода мешавад.

Ҳар як байти READ_REQ, ки ба FPGA фиристода шудааст, дастурест барои фиристодани ҳамаи регистрҳои дастраси 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-озмоиши-интерфейси-генератор-FIG-1
  • Барои тавлиди интерфейси фармоишӣ, шумо бояд скриптро бо ҳар як регистрҳои дилхоҳи UART идорашаванда, ки ҳамчун аргумент номбар шудаанд, иҷро кунед. Намудҳои дастрас std_logic, std_logic_vector, имзонашуда ва имзошуда мебошанд.
  • Ҳолати пешфарз (самт) дар аст ва навъи пешфарз std_logic_vector аст, агар реестр дарозӣ набошад: 1. Сипас, он ба std_logic пешфарз мешавад.
  • Ҳамин тариқ, агар шумо хоҳед, ки сигнали вурудии std_logic эҷод кунед, шумо метавонед яке аз ин далелҳоро истифода баред:
  • my_sl=1
  • my_sl=1:дар
  • my_sl = 1: дар: std_logic
  • Ҳамаи вариантҳои дар боло овардашуда боиси тавлиди скрипт ин сигнали дастраси UART мешаванд:VHDLwhiz-UART-озмоиши-интерфейси-генератор-FIG-2
  • Биёед скриптро бо далелҳо иҷро кунем, то интерфейс бо якчанд регистрҳои самтҳо, дарозӣ ва намудҳои гуногун тавлид шавадVHDLwhiz-UART-озмоиши-интерфейси-генератор-FIG-3

тавлидшуда files

  • Иҷрои бомуваффақияти скрипти gen_uart_regs.py папкаи баромадро бо номи се тавлидшуда тавлид мекунад fileс дар зер оварда шудаанд. Агар онҳо аллакай вуҷуд дошта бошанд, онҳо аз нав навишта мешаванд.
  • genered/uart_regs.vhd
  • genered/uart_regs.py
  • genered/instantiation_template.vho
  • uart_regs.vhd
  • Ин модули интерфейси фармоишии аз ҷониби скрипт тавлидшуда аст. Шумо бояд онро дар тарҳрезии худ эҷод кунед, ки он метавонад ба регистрҳое, ки шумо мехоҳед бо истифода аз UART назорат кунед, дастрас шавад.
  • Ҳама чизе, ки дар қисмати "- регистрҳои дастраси UART" дар боло ҷойгир аст, барои ҳар як модули uart_regs якхела хоҳад буд, дар ҳоле ки таркиби сигналҳои порт дар зери ин сатр аз далелҳои ба скрипти генератор додашуда вобаста аст.
  • Рӯйхати зер объектро барои модули uart_regs нишон медиҳад, ки дар натиҷаи фармони тавлиди собиқample дар секти gen_uart_regs.py нишон дода шудаастVHDLwhiz-UART-озмоиши-интерфейси-генератор-FIG-4
  • Ба шумо лозим нест, ки сигнали uart_rx-ро ҳамоҳанг созед, зеро он дар uart_rx коркард мешавад. модул.
  • Вақте ки модул дархости хонданро қабул мекунад, он арзишҳои ҳама сигналҳои воридотӣ ва баромадро дар давоми давраи соати ҷорӣ мегирад. Сипас акси фаврӣ ба мизбон тавассути UART фиристода мешавад.
  • Вақте ки навиштан рӯй медиҳад, ҳама регистрҳои баромад бо арзишҳои нав дар давоми як давраи соат нав карда мешаванд. Қиматҳои сигнали баромадро алоҳида тағир додан ғайриимкон аст.
  • Аммо, скрипти uart_regs.py ба корбар имкон медиҳад, ки танҳо натиҷаҳои интихобшударо бо хондани аввал арзишҳои ҷории ҳамаи регистрҳо навсозӣ кунад. Он гоҳ ҳама арзишҳо, аз ҷумла арзишҳои навшударо, бармегардонад.
  • uart_regs.py
  • genered/uart_regs.py file дар якҷоягӣ бо модули uart_regs VHDL тавлид мешавад ва дорои маълумоти феҳристи фармоишӣ дар сарлавҳаи file. Бо ин скрипт, шумо метавонед ба осонӣ аз феҳристҳои фармоишии худ хонед ё нависед.

Менюи кӯмак

  • Барои чопи менюи кӯмак python uart_regs.py -h -ро нависед:VHDLwhiz-UART-озмоиши-интерфейси-генератор-FIG-5

Танзими порти UART

  • Скрипт дорои имконоти танзим кардани порти UART бо истифода аз гузариши -c мебошад. Ин дар Windows ва Linux кор мекунад. Онро ба яке аз портҳои дастрас, ки дар менюи кӯмак номбар шудаанд, насб кунед. Барои насб кардани порти пешфарз, шумо инчунин метавонед тағирёбандаи UART_PORT-ро дар скрипти uart_regs.py таҳрир кунед.

Рӯйхати феҳристҳо

  • Маълумот дар бораи харитасозии реестр дар сарлавҳаи скрипти uart_regs.py бо скрипти gen_uart_regs.py ҷойгир карда мешавад. Шумо метавонед регистрҳои дастрасро бо гузариши -l номбар кунед, тавре ки дар зер дида мешавад. Ин фармони маҳаллӣ аст ва бо FPGA-и мавриди ҳадаф ҳамкорӣ намекунадVHDLwhiz-UART-озмоиши-интерфейси-генератор-FIG-6

Навиштан ба регистрҳо

  • Шумо метавонед бо истифода аз гузариши -w ба ягон регистрҳои ҳолати берунӣ нависед. Номи регистрро, ки пас аз он "=" ва арзиши ҳамчун арзиши дуӣ, шонздаҳӣ ё даҳӣ дода шудааст, тавре дар зер нишон дода шудааст, ворид кунед.VHDLwhiz-UART-озмоиши-интерфейси-генератор-FIG-7
  • Дар хотир доред, ки татбиқи VHDL скриптро талаб мекунад, ки ҳама регистрҳои баромадро ҳамзамон нависед. Аз ин рӯ, агар шумо маҷмӯи пурраи регистрҳои баромадро муайян накунед, скрипт аввал хонишро аз FPGA-и мақсаднок иҷро мекунад ва сипас ин арзишҳоро барои арзишҳои гумшуда истифода мебарад. Натиҷа ин аст, ки танҳо регистрҳои муайяншуда тағир меёбанд
  • Вақте ки шумо навиштанро анҷом медиҳед, ҳамаи регистрҳои муайяншуда дар давоми як давраи соат тағир меёбанд, на баробари қабули онҳо тавассути UART.

Феҳристи хониш

  • Калиди -r барои хондани ҳамаи арзишҳои регистрро, тавре ки дар зер нишон дода шудааст, истифода баред. Қиматҳои бо зард ишорашуда ҳамон арзишҳое мебошанд, ки мо дар навиштани қаблӣ иваз карда будемampleVHDLwhiz-UART-озмоиши-интерфейси-генератор-FIG-8
  • Ҳар як хондан тасвири фаврии ҳамаи регистрҳои вуруд ва баромадро нишон медиҳад. Хамаи онхо сampдар давоми як давраи соат бурданд

Debugging

Калиди -d-ро бо ягон дигар коммутаторҳо истифода баред, агар ба шумо протоколи иртиботро ислоҳ кардан лозим бошад. Сипас, скрипт ҳамаи байтҳои фиристодашуда ва қабулшударо чоп мекунад tag онҳо, агар онҳо аломатҳои назорат бошанд, тавре ки дар зер нишон дода шудааст.VHDLwhiz-UART-озмоиши-интерфейси-генератор-FIG-9

Истифодаи интерфейс дар дигар скриптҳои Python

  • Скрипти uart_regs.py дорои синфи UartRegs мебошад, ки шумо метавонед ба осонӣ ҳамчун интерфейси иртиботӣ дар дигар скриптҳои фармоишии Python истифода баред. Танҳо синфро ворид кунед, объекти онро эҷод кунед ва ба истифодаи усулҳо, тавре ки дар зер нишон дода шудааст, оғоз кунед.VHDLwhiz-UART-озмоиши-интерфейси-генератор-FIG-10
  • Барои усулҳо ва тавсифҳо ва намуди баргардонидани арзиш ба сатрҳои коди Python муроҷиат кунед.

instantiation_template.vho

  • Шаблони намунасозӣ дар якҷоягӣ бо модули uart_regs барои роҳати шумо тавлид карда мешавад. Барои сарфаи вақти рамзгузорӣ, шумо метавонед намунаи модул ва эъломияҳои сигналро ба тарҳи худ нусхабардорӣ кунед.VHDLwhiz-UART-озмоиши-интерфейси-генератор-FIG-11VHDLwhiz-UART-озмоиши-интерфейси-генератор-FIG-12

RTL статикӣ files

  • Шумо бояд чизҳои зеринро дохил кунед files дар лоиҳаи VHDL-и худ ҷойгир кунед, то онҳо дар як китобхона бо модули uart_regs ҷамъ карда шаванд:
  • rtl/uart_regs_backend.vhd
  • rtl/uart_rx.vhd
  • rtl/uart_tx.vhd
  • Модули uart_regs_backend мошинҳои ҳолати ниҳоиро амалӣ мекунад, ки маълумоти реестрро ворид ва хориҷ мекунанд. Он модулҳои uart_rx ва uart_tx -ро барои идора кардани иртиботи UART бо мизбон истифода мебарад.

Лоиҳаҳои намоишӣ

  • Дар Zip се лоиҳаи намоишӣ мавҷуданд 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.
  • Пас аз бор кардани лоиҳа дар GUI iCEcube2, Асбобҳо → Ҳамаро иҷро кунед -ро пахш кунед, то харитаи bitmap барномасозиро тавлид кунед file.
  • Шумо метавонед асбоби Lattice Diamond Programmer Standalone-ро барои танзим кардани FPGA бо bitmap тавлидшуда истифода баред file. Вақте ки Diamond Programmer мекушояд, дар қуттии муколамаи истиқбол клик Кушодани лоиҳаи барномасози мавҷуда.
  • Лоиҳаро интихоб кунед file дар Zip ёфт: demo/lattice_icestick/diamond_programmer_project.xcf ва OK пахш кунед.VHDLwhiz-UART-озмоиши-интерфейси-генератор-FIG-13
  • Пас аз боркунии лоиҳа, се нуқтаро дар File Сутуни ном, тавре ки дар боло нишон дода шудааст. Барои интихоби харитаи бит паймоиш кунед file ки шумо дар iCEcube2 тавлид кардаед
  • demo/lattice_icestick/icecube2_proj/uart_regs_Implmnt/sbt/outputs/bitmap/top_icestick_bitmap.bin
  • Дар ниҳоят, вақте ки тахтаи iCEstick ба порти USB дар компютери шумо васл шудааст, Дизайн → Барномаро интихоб кунед, то дурахши SPI-ро барномарезӣ кунед ва FPGA-ро танзим кунед.
  • Шумо ҳоло метавонед бо истифода аз скрипти demo/lattice_icestick/uart_regs.py, тавре ки дар бахши uart_regs.py тавсиф шудааст, ба хондан ва навиштани регистрҳо идома диҳед.

Xilinx Digilent Arty A7-35T

  • Шумо метавонед татбиқи намоиширо барои маҷмӯаи арзёбии Artix-7 35T Arty FPGA дар папкаи demo/arty_a7_35 пайдо кунед.
  • Vivado-ро кушоед ва ба истихроҷшуда гузаред fileс бо истифода аз консол Tcl, ки дар поёни интерфейси GUI пайдо шудааст. Барои ворид кардани папкаи лоиҳаи намоишӣ ин фармонро ворид кунед:
  • CD /demo/arty_a7_35/vivado_proj/
  • Барои барқарор кардани лоиҳаи Vivado скрипти create_vivado_proj.tcl Tcl -ро иҷро кунед:
  • сарчашма ./create_vivado_proj.tcl
  • Дар панели паҳлӯӣ тавлиди Bitstream -ро клик кунед, то тамоми қадамҳои татбиқро иҷро кунед ва ҷараёни битҳои барномасозиро тавлид кунед file.
  • Дар ниҳоят, менеҷери сахтафзорро кушоед ва FPGA-ро тавассути GUI барномарезӣ кунед.
  • Шумо ҳоло метавонед бо истифода аз скрипти demo/arty_a7_35/uart_regs.py, тавре ки дар бахши uart_regs.py тавсиф шудааст, ба хондан ва навиштани регистрҳо идома диҳед.

Xilinx Digilent Arty S7-50

  • Шумо метавонед татбиқи намоиширо барои тахтаи таҳияи Arty S7: Spartan-7 FPGA дар папкаи demo/arty_s7_50 пайдо кунед.
  • Vivado-ро кушоед ва ба истихроҷшуда гузаред fileс бо истифода аз консол Tcl, ки дар поёни интерфейси GUI пайдо шудааст. Барои ворид кардани папкаи лоиҳаи намоишӣ ин фармонро ворид кунед:
  • CD /demo/arty_s7_50/vivado_proj/
  • Барои барқарор кардани лоиҳаи Vivado скрипти create_vivado_proj.tcl Tcl -ро иҷро кунед:
  • сарчашма ./create_vivado_proj.tcl
  • Дар панели паҳлӯӣ тавлиди Bitstream -ро клик кунед, то тамоми қадамҳои татбиқро иҷро кунед ва ҷараёни битҳои барномасозиро тавлид кунед file.
  • Дар ниҳоят, менеҷери сахтафзорро кушоед ва FPGA-ро тавассути GUI барномарезӣ кунед.
  • Шумо ҳоло метавонед бо истифода аз скрипти demo/arty_s7_50/uart_regs.py, тавре ки дар бахши uart_regs.py тавсиф шудааст, ба хондан ва навиштани регистрҳо идома диҳед.

Амалй

  • Талаботи мушаххаси татбиқ вуҷуд надорад.

Маҳдудиятҳо

  • Барои ин тарҳ ягон маҳдудияти мушаххаси вақт лозим нест, зеро интерфейси UART суст аст ва ҳамчун интерфейси асинхронӣ баррасӣ мешавад.
  • Вуруди uart_rx ба модули uart_regs дар дохили модули uart_rx ҳамоҳанг карда мешавад. Ҳамин тариқ, он лозим нест, ки дар модули сатҳи боло ҳамоҳанг карда шавад.

Масъалаҳои маълум

  • Вобаста аз он, ки оё меъмории FPGA-и шумо арзишҳои сабти пешфарзро дастгирӣ мекунад, ба шумо лозим меояд, ки модулро пеш аз истифода аз нав танзим кунед.

Маълумоти бештар

Саволҳо

Савол: Ҳадафи генератори интерфейси санҷиши UART чист?

Ҷавоб: Генератори интерфейси санҷишии UART имкон медиҳад, ки интерфейсҳои фармоишӣ бо арзишҳои феҳристи FPGA бо истифода аз иртиботи UART ҳамкорӣ кунанд.

Савол: Чӣ тавр ман бастаи Pyserialро насб мекунам?

Ҷавоб: Шумо метавонед Pyserial-ро тавассути Pip бо истифода аз фармони: pip install pyserial насб кунед

Ҳуҷҷатҳо / Сарчашмаҳо

Генератори интерфейси озмоишии VHDLwhiz UART [pdf] Дастури корбар
Генератори интерфейси санҷишии UART, генератори интерфейси санҷишӣ, генератори интерфейс, генератор

Иқтибосҳо

Назари худро гузоред

Суроғаи почтаи электронии шумо нашр намешавад. Майдонҳои зарурӣ қайд карда шудаанд *