Inhoudsopgave:
- Stap 1: Basisprincipes van DM-blok
- Stap 2: Nieuwe DM-blokconfiguraties maken
- Stap 3: Gebruik een DM-blok om een statusovergang te activeren
- Stap 4: Een DM-blok gebruiken om te communiceren met blokken buiten de ASM
- Stap 5: Ontwerpvoorbeeld
Video: DIY dynamisch geheugenblok - Ajarnpa
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:15
De SLG46880 en SLG46881 introduceren verschillende nieuwe blokken die niet zijn verschenen in eerdere GreenPAK-apparaten. Deze toepassingsnotitie beschrijft de Dynamic Memory (DM)-blokken en hoe ze te gebruiken.
Het belangrijkste voordeel van DM-blokken is dat ze opnieuw kunnen worden geconfigureerd om verschillende functies uit te voeren in verschillende toestanden van de 12-standen Asynchronous State Machine (ASM) van de SLG46880/1. Dit maakt ze een zeer flexibel onderdeel, omdat ze op de ene manier in toestand 0 en op een andere manier in toestand 1 kunnen worden gebruikt.
Hieronder hebben we de stappen beschreven die nodig zijn om te begrijpen hoe de GreenPAK-chip is geprogrammeerd om het Dynamic Memory Block te creëren. Als u echter alleen het resultaat van het programmeren wilt hebben, download dan GreenPAK-software om het reeds voltooide GreenPAK-ontwerpbestand te bekijken. Sluit de GreenPAK Development Kit aan op uw computer en klik op programma om de aangepaste IC voor het dynamische geheugen te maken.
Stap 1: Basisprincipes van DM-blok
Er zijn 4 DM-blokken in de Dialog GreenPAK SLG46880/1. Een niet-geconfigureerd DM-blok wordt getoond in figuur 1.
Alle DM-blokken in de SLG46880/1 hebben de volgende bronnen:
● 2 opzoektabellen: een 3-bit LUT en een 2-bit LUT
● 2 multiplexers
● 1 CNT/DLY
● 1 uitgangsblok
Figuur 2 toont hetzelfde DM-blok met ingekleurde connectoren. (Deze kleuren verschijnen niet in GreenPAK™ Designer, ze zijn alleen voor illustratieve doeleinden.) De groene connectoren zijn invoer naar het DM-blok van de Matrix. De oranje verbindingen zijn speciale verbindingen binnen het DM-blok, die niet kunnen worden gewijzigd of verplaatst. De blauwe connectoren zijn klokaansluitingen voor het tellerblok. De paarse connector kan worden gebruikt om een toestandsovergang te activeren, maar is geen algemene matrixverbinding. De gele connectoren zijn matrixuitgangen van het DM-blok.
Stap 2: Nieuwe DM-blokconfiguraties maken
Om een nieuwe DM-blokconfiguratie te maken, moet je een DM-blok selecteren en het eigenschappenvenster openen, weergegeven in figuur 3. Nu kun je een nieuwe configuratie voor dit DM-blok maken door op het "+"-pictogram in de rechterbovenhoek te klikken. Op dit punt kunt u de configuratie desgewenst hernoemen en het DM-blok configureren zoals u dat wilt, met behulp van het eigenschappenvenster. U kunt een onnodige configuratie verwijderen door deze te selecteren in het vervolgkeuzemenu en op de knop "-" te klikken.
Elk DM-blok kan tot 6 verschillende configuraties hebben. Elke DM-blokconfiguratie kan in elk van de 12 staten van de ASM worden gebruikt, maar er is slechts één configuratie per DM-blok per staat toegestaan. Afbeelding 4 laat zien hoe de resource manager-balk aangeeft dat een van de DM0_0-configuraties is gebruikt. Het aantal configuraties voor DM0_0 is verhoogd van 0/6 naar 1/6.
Stap 3: Gebruik een DM-blok om een statusovergang te activeren
Figuur 5 toont een aantal verschillende manieren om een toestandsovergang te activeren. We hebben nieuwe configuraties voor DM0_0 en DM1_0 gemaakt en deze "myConfig" en "myConfig1" genoemd. De bovenste DM wordt eenvoudigweg gebruikt als een 3-bits EN-poort, aangezien de bovenste mux de uitvoer van de EN-poort doorlaat en de 2-bits buffer deze doorgeeft aan het uitvoerblok. (De 2-bit LUT had ook kunnen worden geconfigureerd als een buffer voor het CNT/DLY-blok.) De "naar ASM-connector wordt gebruikt om een statusovergang van status 0 naar status 1 te activeren. Op dezelfde manier wordt een matrixverbinding van Pin5 gebruikt om een statusovergang van status 0 naar status 2 te activeren. Ten slotte is DM1_0 zo geconfigureerd dat beide muxes door het signaal van Pin6 gaan. De teller is geconfigureerd als een vertraging van beide flanken van 100 µs en de 2-bits LUT is een EN-poort. Net als in DM0_0 wordt het uitgangsblok gebruikt om een andere toestandsovergang te activeren.
Stap 4: Een DM-blok gebruiken om te communiceren met blokken buiten de ASM
Zoals je misschien in de vorige sectie hebt opgemerkt, heeft het uitvoerblok van DM0_0 3 "naar Matrix" -uitgangen, terwijl het uitvoerblok van DM1_0 geen matrixuitgangen heeft. Dit geldt ook voor DM0_1 en DM1_1; DM0_1 heeft 3 matrixuitgangen, terwijl DM1_1 er geen heeft. De 3 "naar matrix"-uitgangen kunnen worden aangesloten op andere matrixconnectoren, zoals pinnen, LUT's, DFF's, enz. Dit wordt getoond in Afbeelding 6.
Merk op dat zodra een verbinding is gemaakt tussen een "naar Matrix" -pin en andere blokken buiten het State Machine-gebied, deze in elke staat zal bestaan, ongeacht welke DM-configuratie wordt gebruikt. In Afbeelding 6 toont het bovenste gedeelte myConfig0 van DM0_0, dat in staat 0 bestaat. Het onderste gedeelte toont myConfig1 van DM0_0, dat in staat 1 bestaat. De bovenste "naar Matrix"-verbinding in beide configuraties is verbonden met Pin3, terwijl de middelste één is verbonden met 2-bit LUT0. Slechts één van die "naar Matrix"-verbindingen kan op elk moment "actief" zijn. Er zijn 4 opties in het eigenschappenvenstermenu voor het uitvoerblok van DM0_0 en DM0_1: ● Out0/1/2 keep ● Bypass naar out0, out1/2 keep ● Bypass naar out1, out0/2 keep ● Bypass naar out2, out1/1 keep Deze instellingen worden gebruikt om te bepalen welke van de drie uitgangen in elke configuratie actief zijn. Als de eerste optie is geselecteerd, wordt de uitvoer van de 2-bit LUT van het DM-blok niet doorgegeven aan een van de drie "naar Matrix" -uitgangen. De waarde van die drie signalen blijft in die toestand ongewijzigd. Als echter een van de andere drie opties wordt gebruikt, wordt de uitvoer van de 2-bit LUT van het DM-blok doorgegeven aan respectievelijk out0, out1 of out2 en blijft de waarde van de andere twee uitgangen ongewijzigd.
Stap 5: Ontwerpvoorbeeld
In het bovenstaande ontwerpvoorbeeld zijn de IN0, IN1 en IN2 samen OR'd. Ondertussen wordt IN3 met 1 ms vertraagd en vervolgens EN'd met de uitvoer van de OF-poort. Het to Matrix-blok is zo geconfigureerd dat de uitvoer van het DM-blok naar OUT0 in STATE0 wordt gestuurd, terwijl de waarden bij OUT1 en OUT2 behouden blijven.
Conclusie
Dankzij hun herconfigureerbaarheid zijn Dynamic Memory-blokken in de Dialog GreenPAK SLG46880/1 extreem flexibel en kunnen ze op verschillende manieren worden gebruikt. Als je eenmaal het werken met DM-blokken onder de knie hebt, kun je complexere ontwerpen maken door verschillende DM-blokconfiguraties in verschillende ASM-statussen samen te voegen.
Aanbevolen:
DIY Raspberry Pi-downloadbox: 4 stappen
DIY Raspberry Pi Downloadbox: Ben je vaak bezig met het downloaden van grote bestanden zoals films, torrents, cursussen, tv-series, etc dan ben je hier aan het juiste adres. In deze Instructable zouden we onze Raspberry Pi zero in een downloadmachine veranderen. Die elke
Versterker en luidspreker DIY: 4 stappen
Versterker en luidspreker DIY: dit is de laatste fase van het DIY-project van de versterker door luidsprekers toe te voegen aan de vorige uitgangen van de volgende instructables. *** - PC-luidsprekerversterker https://www.instructables.com/PC-Speaker-Amplifier/ geïntroduceerd in 27 december 2020- Arduino Au
Draagbare Bluetooth-luidspreker - MKBoom DIY Kit: 5 stappen (met afbeeldingen)
Draagbare Bluetooth-luidspreker | MKBoom DIY Kit: Hallo allemaal! Het is zo goed om na een lange pauze terug te zijn met weer een ander luidsprekerproject. Aangezien de meeste van mijn builds nogal wat gereedschap nodig hebben om te voltooien, besloot ik deze keer een draagbare luidspreker te bouwen met een kit die je gemakkelijk kunt kopen. Ik dacht het
DIY FPV-bril: 6 stappen
DIY FPV-bril: ooit die cooooooooooly fpv-systemen gezien die de jongens van flitetest hebben. Nou, ik was jaloers op ze omdat ze zulke geweldige dingen hadden. Ik kende het bereik van mobiele telefoons en de kracht van videogesprekken of Skype of iets dergelijks. Dus besloot ik om mijn eigen
Nep dynamisch prijskaartje: 6 stappen (met afbeeldingen)
Nep dynamisch prijskaartje: de prijzen van Amazon veranderen voortdurend. Als u artikelen langer dan een paar uur in uw winkelwagen laat liggen, wordt u waarschijnlijk gewaarschuwd voor kleine schommelingen - $ 0,10 hier, $ 2,04 daar. Amazon en zijn handelaren gebruiken duidelijk een vorm van een