Indholdsfortegnelse:
- Trin 1: Oversigt over SPI
- Trin 2: Designspecifikationer
- Trin 3: Start fra
- Trin 4: RTL -visning af SPI Master Core og simuleringsbølgeformer
Video: Design af SPI Master i VHDL: 6 trin
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:27
I denne instruktive vil vi designe en SPI Bus Master fra bunden i VHDL.
Trin 1: Oversigt over SPI
- SPI er en synkron seriel bus
- Dens popularitet og enkelhed gjorde den til en de facto standard inden for seriel kommunikation
- Fuld dupleks bus
- Enkel protokol og blandt de hurtigste serielle bus
Trin 2: Designspecifikationer
Disse er specifikationerne for SPI Master, vi skal designe:
- Understøtter alle fire driftsformer; dynamisk konfigurerbar
- Ur aktiverer kontrol for strømbesparelse
- Statisk konfigurerbar ordlængde og -hastighed
- Enkelt afbrydelse til både transmission og modtagelse
Trin 3: Start fra
Først og fremmest skal vores IP have to grænseflader. Den ene er seriel grænseflade, og den anden er parallel grænseflade. Serielt interface består af de-facto standardsignaler fra SPI: MOSI, MISO, SS, SCLK.
MOSI kaldes undertiden SDO, og MISO kaldes undertiden SDI.
Seriel grænseflade bruges til at kommunikere med eksterne perifere enheder, dvs. SPI -slaver.
Parallel grænseflade bruges til at kommunikere med vores vært, dvs. en mikrokontroller eller mikroprocessor, som faktisk fortæller masteren, hvilke data der skal sendes serielt og modtages gennem serielinjerne. dvs. Alle databusser tilhører parallel interface.
Vi har et globalt ur, der driver intern SPI -logik, samt SCLK, som vi genererer internt.
Vi har også nogle kontrolsignaler som skrive -aktivering, uraktivering. Og afbrydelse og andre statussignaler.
Da vi skal håndtere komplekse kontrolbetingelser, er det enklere at designe sådanne serielle kommunikations -IP'er som en FSM. Vi vil også designe SPI master som en FSM. FSM vil blive drevet af et andet internt ur, som er to gange SCLK. Det interne ur genereres ved hjælp af synkrone tællere fra det globale ur.
Alle styresignaler, der krydser ur -domæner, har synkroniseringer til at være på den sikrere side.
Trin 4: RTL -visning af SPI Master Core og simuleringsbølgeformer
Det er et rent RTL -design uden brug af dedikerede FPGA -IP'er. Derfor er det en fuldt bærbar kode til enhver FPGA.
Anbefalede:
Design af en simpel 4-vejs sæt associeret cache-controller i VHDL: 4 trin
Design af en simpel firevejssæt associeret cachecontroller i VHDL: I min tidligere instruerbare så vi, hvordan vi designede en simpel direkte kortlagt cachecontroller. Denne gang går vi et skridt foran. Vi designer en simpel associeret cache-controller med fire veje. Fordel? Mindre miss -rate, men på bekostning af perfo
Design af en programmerbar afbrydelsescontroller i VHDL: 4 trin
Design af en programmerbar afbrydelsescontroller i VHDL: Jeg er overvældet over den slags svar, jeg får i denne blog. Tak fyre for at besøge min blog og motivere mig til at dele min viden med jer. Denne gang vil jeg præsentere designet af et andet interessant modul, vi ser i alle SOC'er - Interrupt C
Design af en simpel cache -controller i VHDL: 4 trin
Design af en simpel cache -controller i VHDL: Jeg skriver dette instruerbart, fordi jeg fandt det lidt svært at få en reference -VHDL -kode til at lære og begynde at designe en cache -controller. Så jeg designede selv en cache -controller fra bunden og testede den med succes på FPGA. Jeg har p
Design af I2C Master i VHDL: 5 trin
Design af I2C Master i VHDL: I denne instruktive diskuteres design af en simpel I2C master i VHDL.BEMÆRK: klik på hvert billede for at se fuldt billede
Design af en simpel VGA -controller i VHDL og Verilog: 5 trin
Design af en simpel VGA -controller i VHDL og Verilog: I denne instruktive skal vi designe en simpel VGA -controller i RTL. VGA Controller er det digitale kredsløb designet til at drive VGA -skærme. Den læser fra Frame Buffer (VGA Memory), der repræsenterer rammen, der skal vises, og genererer nece