VHDLwiz-լոգոն

VHDLwiz UART փորձարկման ինտերֆեյսի գեներատոր

VHDLwiz-UART-Test-Interface-Generator-PRODUCT

Ապրանքի մասին տեղեկատվություն

Տեխնիկական պայմաններ:

  • Ապրանքի անվանումը. VHDL-ը գրանցում է UART թեստային ինտերֆեյսի գեներատորը
  • Տարբերակ՝ 1.0.4
  • Ամսաթիվ՝ 18 օգոստոսի, 2024թ
  • Հեղինակ՝ Յոնաս Ջուլիան Ջենսեն
  • Արտադրանք URL: Ապրանքի հղում
  • Կոնտակտային էլ. jonas@vhdlwhiz.com

Նկարագրություն

Այս արտադրանքը թույլ է տալիս ստեղծել հատուկ ինտերֆեյսներ՝ FPGA ռեգիստրի արժեքները կարդալու և գրելու համար՝ օգտագործելով UART: Ստեղծված VHDL մոդուլը և Python սկրիպտը ապահովում են ձեր FPGA դիզայնի տարբեր տեսակի ռեգիստրների հետ փոխազդելու հնարավորություն:

Պահանջներ

  • Python 3 թարգմանիչ
  • պիսերիալ փաթեթ

Արձանագրություն

Արտադրանքն օգտագործում է տվյալների շրջանակի արձանագրություն՝ չորս կառավարման նիշերով.

  • Անունը: READ_REQ, Արժեքը: 0x0A – Հրահանգ հոսթից դեպի FPGA՝ սկսել գրելու հաջորդականությունը՝ բոլոր ռեգիստրները հետ ուղարկելու UART-ով
  • Անունը: START_ԳՐԵԼ, Արժեքը: 0x0B – Նշում է գրելու հաջորդականության սկիզբը երկու ուղղությամբ
  • Անունը: END_ԳՐԵԼ, Արժեքը: 0x0C – Նշում է գրելու հաջորդականության ավարտը ցանկացած ուղղությամբ
  • Անունը: ՓԱԽՔ, Արժեքը: 0x0D – Escape նիշ, որն օգտագործվում է հսկիչ բառերից խուսափելու համար

Ապրանքի օգտագործման հրահանգներ

Սցենարների գործարկում

Արտադրանքն օգտագործելու համար համոզվեք, որ տեղադրել եք Python 3-ը և Pyserial փաթեթը: Գործարկեք սցենարները Python 3 թարգմանչի միջոցով:

Պատվերով ինտերֆեյսների ստեղծում

Օգտագործեք gen_uart_regs.py սկրիպտը՝ FPGA ռեգիստրի արժեքները կարդալու և գրելու համար հատուկ միջերեսներ ստեղծելու համար: Ելք ստեղծելիս կարող եք նշել մուտքային և ելքային ռեգիստրների և տեսակների կազմը files.

Փոխազդեցություն ռեգիստրների հետ

Դուք կարող եք կարդալ կամ գրել ձեր FPGA դիզայնի ցանկացած թվով ռեգիստրների վրա՝ օգտագործելով ստեղծված VHDL մոդուլը և Python սկրիպտը: Մատչելի ռեգիստրները կարող են ունենալ այնպիսի տեսակներ, ինչպիսիք են std_logic, std_logic_vector, signed կամ unsigned:

Լիցենզիա

  • MIT լիցենզիան ծածկում է սկզբնական կոդի հեղինակային իրավունքի պահանջները և օգտագործման պայմանները: Տե՛ս LICENSE.txt file Zip-ում file մանրամասների համար.

Փոփոխությունների օրագիր

  • Այս փոփոխությունները վերաբերում են նախագծին files, և այս փաստաթուղթը համապատասխանաբար թարմացվում է
Տարբերակ Դիտողություններ
1.0.0 Նախնական թողարկում
1.0.1 Ուղղվել է բացակայող «self» հղման սխալը, երբ ներմուծվում է որպես 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
  • գեներացվել/uart_regs.vhd
  • generated/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-ը fileԱյս նախագծում s-ը թույլ է տալիս ստեղծել հատուկ ինտերֆեյսեր՝ UART-ի միջոցով FPGA ռեգիստրի տարբեր տեսակների և լայնությունների արժեքները կարդալու և գրելու համար:
  • Դուք կարող եք օգտագործել ստեղծված VHDL մոդուլը և Python սկրիպտը՝ ձեր դիզայնի ցանկացած թվով ռեգիստրներից կարդալու կամ գրելու համար: UART հասանելի ռեգիստրները կարող են ունենալ std_logic, std_logic_vector, signed կամ unsigned տեսակները:
  • Դուք կարող եք որոշել մուտքային և ելքային ռեգիստրների և տեսակների ճշգրիտ կազմը ելքը ստեղծելիս files օգտագործելով gen_uart_regs.py սկրիպտը:
  • Python սկրիպտները մասամբ ստեղծվել են ChatGPT արհեստական ​​ինտելեկտի գործիքի օգնությամբ, մինչդեռ VHDL կոդը ձեռքի աշխատանք է։

Պահանջներ

  • Այս նախագծի սկրիպտները պետք է գործարկվեն Python 3 թարգմանչի միջոցով և պետք է տեղադրվի Pyserial փաթեթը:
  • Դուք կարող եք տեղադրել pyserial Pip-ի միջոցով՝ օգտագործելով այս հրամանը՝ pip install pyserial

Արձանագրություն

  • VHDL files-ը և Python սկրիպտը օգտագործում են տվյալների շրջանակավորման արձանագրություն՝ չորս հսկողությամբ
Անուն Արժեք Մեկնաբանություն
READ_REQ 0x0A Հրահանգ հյուրընկալողից FPGA-ին՝ գրություն սկսելու համար

բոլոր ռեգիստրները UART-ով հետ ուղարկելու հաջորդականությունը

START_ԳՐԵԼ 0x0B Նշում է գրելու հաջորդականության սկիզբը որևէ մեկում

ուղղությունը

END_ԳՐԵԼ 0x0C Նշում է գրելու հաջորդականության ավարտը երկու ուղղությամբ
ՓԱԽՔ 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 -hVHDLwiz-UART-Test-Interface-Generator-FIG-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-հասանելի ազդանշանը.VHDLwiz-UART-Test-Interface-Generator-FIG-2
  • Եկեք գործարկենք սցենարը արգումենտներով՝ տարբեր ուղղությունների, երկարությունների և տեսակների մի քանի ռեգիստրներով ինտերֆեյս ստեղծելու համարVHDLwiz-UART-Test-Interface-Generator-FIG-3

Գեներացվել է files

  • Gen_uart_regs.py սկրիպտի հաջող գործարկումը կստեղծի ելքային թղթապանակ, որը կոչվում է գեներացված երեքով fileստորև նշված են: Եթե ​​դրանք արդեն կան, ապա դրանք կվերագրվեն:
  • գեներացվել/uart_regs.vhd
  • generated/uart_regs.py
  • գեներացված/instantiation_template.vho
  • uart_regs.vhd
  • Սա սկրիպտի կողմից ստեղծված հատուկ ինտերֆեյսի մոդուլն է: Դուք պետք է այն օրինականացնեք ձեր դիզայնում, որտեղ այն կարող է մուտք գործել այն ռեգիստրները, որոնք ցանկանում եք վերահսկել՝ օգտագործելով UART:
  • «– UART հասանելի ռեգիստրներ» բաժնի վերևում գտնվող ամեն ինչ նույնական կլինի յուրաքանչյուր uart_regs մոդուլի համար, մինչդեռ այդ տողից ցածր նավահանգիստների ազդանշանների կազմը կախված է գեներատորի սկրիպտին տրված փաստարկներից:
  • Ստորև բերված ցանկը ցույց է տալիս uart_regs մոդուլի կազմը, որը ստացվում է գեներացնող հրամանի օրինակիցampցուցադրված է gen_uart_regs.py բաժնումVHDLwiz-UART-Test-Interface-Generator-FIG-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 օգնության ընտրացանկը տպելու համար.VHDLwiz-UART-Test-Interface-Generator-FIG-5

UART պորտի կարգավորում

  • Սցենարն ունի UART նավահանգիստ սահմանելու տարբերակներ՝ օգտագործելով -c անջատիչը: Սա աշխատում է Windows-ի և Linux-ի վրա: Սահմանեք այն օգնության ցանկում նշված հասանելի նավահանգիստներից մեկի վրա: Լռելյայն նավահանգիստ սահմանելու համար կարող եք նաև խմբագրել UART_PORT փոփոխականը uart_regs.py սկրիպտում:

Ցուցակման գրանցամատյաններ

  • Ռեգիստրի քարտեզագրման մասին տեղեկատվությունը տեղադրվում է uart_regs.py սկրիպտի վերնագրում gen_uart_regs.py սկրիպտով: Դուք կարող եք թվարկել առկա ռեգիստրները -l անջատիչով, ինչպես երևում է ստորև: Սա տեղական հրաման է և չի փոխազդի թիրախային FPGA-ի հետVHDLwiz-UART-Test-Interface-Generator-FIG-6

Գրանցման համար գրել

  • Դուք կարող եք գրել դուրս ռեժիմի ռեգիստրներից որևէ մեկին՝ օգտագործելով -w անջատիչը: Տրամադրեք ռեգիստրի անունը, որին հաջորդում է «=»-ը և արժեքը, որը տրված է որպես երկուական, տասնորդական կամ տասնորդական արժեք, ինչպես ցույց է տրված ստորև:VHDLwiz-UART-Test-Interface-Generator-FIG-7
  • Նկատի ունեցեք, որ VHDL-ի իրականացումը պահանջում է, որ սցենարը գրի բոլոր ելքային ռեգիստրները միաժամանակ: Հետևաբար, եթե չնշեք ելքային ռեգիստրների ամբողջական փաթեթը, սկրիպտը սկզբում կկատարի նպատակային FPGA-ի ընթերցում, այնուհետև կօգտագործի այդ արժեքները բացակայողների համար: Արդյունքը կլինի այն, որ փոխվեն միայն նշված ռեգիստրները
  • Երբ դուք կատարում եք գրություն, բոլոր նշված ռեգիստրները կփոխվեն նույն ժամացույցի ցիկլի ընթացքում, ոչ թե UART-ով ստացվելուն պես:

Ընթերցանության գրանցամատյաններ

  • Օգտագործեք -r անջատիչը՝ կարդալու բոլոր ռեգիստրի արժեքները, ինչպես ցույց է տրված ստորև: Դեղինով նշված արժեքներն այն արժեքներն են, որոնք մենք փոխել ենք նախորդ գրության մեջampleVHDLwiz-UART-Test-Interface-Generator-FIG-8
  • Յուրաքանչյուր ընթերցում ցույց է տալիս բոլոր մուտքային և ելքային ռեգիստրների ակնթարթային պատկերը: Նրանք բոլորն էլ սampղեկավարվել է նույն ժամացույցի ընթացքում

Վրիպազերծում

Օգտագործեք -d անջատիչը ցանկացած այլ անջատիչի հետ, եթե Ձեզ անհրաժեշտ է վրիպազերծել կապի արձանագրությունը: Այնուհետև սցենարը կտպագրի բոլոր ուղարկված և ստացված բայթերը և tag դրանք, եթե դրանք կառավարման նիշ են, ինչպես ցույց է տրված ստորև:VHDLwiz-UART-Test-Interface-Generator-FIG-9

Օգտագործելով միջերեսը Python-ի այլ սցենարներում

  • uart_regs.py սկրիպտը պարունակում է UartRegs դաս, որը դուք հեշտությամբ կարող եք օգտագործել որպես հաղորդակցման միջերես Python-ի այլ հատուկ սկրիպտներում: Պարզապես ներմուծեք դասը, ստեղծեք դրա օբյեկտը և սկսեք օգտագործել մեթոդները, ինչպես ցույց է տրված ստորև:VHDLwiz-UART-Test-Interface-Generator-FIG-10
  • Մեթոդների և նկարագրությունների և վերադարձի արժեքների տեսակների համար դիմեք Python կոդի փաստաթղթերի տողերին:

instantiation_template.vho

  • Instantiation կաղապարը ստեղծվում է uart_regs մոդուլի հետ միասին՝ ձեր հարմարության համար: Կոդավորման ժամանակը խնայելու համար դուք կարող եք պատճենել մոդուլի ինստանցիաները և ազդանշանային հայտարարությունները ձեր դիզայնում:VHDLwiz-UART-Test-Interface-Generator-FIG-11VHDLwiz-UART-Test-Interface-Generator-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 files պատրաստված հատուկ այդ նմուշների համար:

Ցանցային iCEstick

  • Դեմո/icecube2_icestick թղթապանակը պարունակում է ռեգիստրի հասանելիության ցուցադրական իրականացում Lattice iCEstick FPGA տախտակի համար:
  • Իրականացման գործընթացն անցնելու համար բացեք demo/lattice_icestick/icecube2_proj/uart_regs_sbt.project file Lattice iCEcube2 դիզայնի ծրագրաշարում:
  • Նախագիծը iCEcube2 GUI-ում բեռնելուց հետո սեղմեք Գործիքներ → Գործարկել բոլորը՝ ծրագրավորման բիթքարտեզ ստեղծելու համար։ file.
  • Դուք կարող եք օգտագործել Lattice Diamond Programmer Standalone գործիքը՝ FPGA-ն ստեղծած բիթքարտեզով կարգավորելու համար: file. Երբ Diamond Programmer-ը բացվում է, կտտացրեք Բացեք գոյություն ունեցող ծրագրավորողի նախագիծը ողջույնի երկխոսության վանդակում:
  • Ընտրեք նախագիծ file հայտնաբերվել է Zip-ում՝ demo/lattice_icestick/diamond_programmer_project.xcf և սեղմել OK:VHDLwiz-UART-Test-Interface-Generator-FIG-13
  • Նախագծի բեռնումից հետո սեղմեք երեք կետերի վրա File Անվանման սյունակ, ինչպես ցույց է տրված վերևում: Թերթիր՝ bitmap-ն ընտրելու համար 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-ն և անցեք արդյունահանված files օգտագործելով Tcl վահանակը, որը գտնվում է GUI ինտերֆեյսի ներքևում: Մուտքագրեք այս հրամանը՝ դեմո նախագծի թղթապանակ մտնելու համար.
  • cd /demo/arty_a7_35/vivado_proj/
  • Կատարեք create_vivado_proj.tcl Tcl սկրիպտը՝ Vivado նախագիծը վերականգնելու համար.
  • աղբյուր ./create_vivado_proj.tcl
  • Կտտացրեք «Ստեղծեք բիթ հոսք» կողային տողում, որպեսզի անցնեք իրականացման բոլոր քայլերը և ստեղծեք ծրագրավորման բիթ հոսքը file.
  • Ի վերջո, սեղմեք Open Hardware Manager-ը և ծրագրավորեք 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-ն և անցեք արդյունահանված files օգտագործելով Tcl վահանակը, որը գտնվում է GUI ինտերֆեյսի ներքևում: Մուտքագրեք այս հրամանը՝ դեմո նախագծի թղթապանակ մտնելու համար.
  • cd /demo/arty_s7_50/vivado_proj/
  • Կատարեք create_vivado_proj.tcl Tcl սկրիպտը՝ Vivado նախագիծը վերականգնելու համար.
  • աղբյուր ./create_vivado_proj.tcl
  • Կտտացրեք «Ստեղծեք բիթ հոսք» կողային տողում, որպեսզի անցնեք իրականացման բոլոր քայլերը և ստեղծեք ծրագրավորման բիթ հոսքը file.
  • Ի վերջո, սեղմեք Open Hardware Manager-ը և ծրագրավորեք FPGA-ն GUI-ի միջոցով:
  • Այժմ կարող եք շարունակել գրանցամատյանները կարդալ և գրել՝ օգտագործելով demo/arty_s7_50/uart_regs.py սկրիպտը, ինչպես նկարագրված է uart_regs.py բաժնում:

Իրականացում

  • Իրականացման հատուկ պահանջներ չկան:

Սահմանափակումներ

  • Այս դիզայնի համար ժամանակի հատուկ սահմանափակումներ չեն պահանջվում, քանի որ UART ինտերֆեյսը դանդաղ է և համարվում է ասինխրոն ինտերֆեյս:
  • uart_rx մուտքագրումը uart_regs մոդուլին համաժամացվում է uart_rx մոդուլում: Այսպիսով, այն պետք չէ համաժամեցնել վերին մակարդակի մոդուլում:

Հայտնի խնդիրներ

  • Ձեզ կարող է անհրաժեշտ լինել զրոյացնել մոդուլը, նախքան այն օգտագործելը, կախված նրանից, թե արդյոք ձեր FPGA ճարտարապետությունն աջակցում է լռելյայն ռեգիստրի արժեքներին:

Լրացուցիչ տեղեկություններ

ՀՏՀ-ներ

Հարց: Ո՞րն է UART թեստային ինտերֆեյսի գեներատորի նպատակը:

A. UART թեստային ինտերֆեյսի գեներատորը թույլ է տալիս ստեղծել հատուկ ինտերֆեյսներ՝ FPGA ռեգիստրի արժեքների հետ փոխազդելու համար՝ օգտագործելով UART հաղորդակցությունը:

Հարց: Ինչպե՞ս կարող եմ տեղադրել Pyserial փաթեթը:

A: Դուք կարող եք տեղադրել Pyserial-ը Pip-ի միջոցով՝ օգտագործելով հրամանը՝ pip install pyserial

Փաստաթղթեր / ռեսուրսներ

VHDLwiz UART փորձարկման ինտերֆեյսի գեներատոր [pdf] Օգտագործողի ձեռնարկ
UART փորձարկման ինտերֆեյսի գեներատոր, փորձնական ինտերֆեյսի գեներատոր, ինտերֆեյսի գեներատոր, գեներատոր

Հղումներ

Թողնել մեկնաբանություն

Ձեր էլփոստի հասցեն չի հրապարակվի: Պարտադիր դաշտերը նշված են *