CPLD för den absoluta nybörjaren

Här skriver vi inga frågor. Här finns svaren.
Användarvisningsbild
AndersG
EF Sponsor
Inlägg: 9233
Blev medlem: 25 februari 2008, 17:10:58
Ort: Mariehamn
Kontakt:

Re: CPLD för den absoluta nybörjaren

Inlägg av AndersG »

Faktum är att Digital är rätt kul. Man kan rita ett tillståndsdiagram och sedan be den göra en krets som man sedan kan simulera. Man ser signalerna i kretsen och hur statusen ändrar i diagrammet.
FSM_2025-10-23_20-19-24.jpg
Jag kan ju leka med detta och sedan exportera som VHDL eller Verilog!
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
ToPNoTCH
Inlägg: 5241
Blev medlem: 21 december 2009, 17:59:48

Re: CPLD för den absoluta nybörjaren

Inlägg av ToPNoTCH »

Ähh hoppa på Verilog.

Med dom där Tang Nano grejorna som kom för något år sedan finns det inga ursäkter att inte testa lite.
Jag är nybörjare, men har lyckats skapa några roliga grejor som SPI interface styrning av en sample & hold krets, Demux av 8 kanaligt ljud (I2S) etc.

Man har ju hört om den "höga tröskeln" men jag tycker man kom framåt ganska fort.
Användarvisningsbild
AndersG
EF Sponsor
Inlägg: 9233
Blev medlem: 25 februari 2008, 17:10:58
Ort: Mariehamn
Kontakt:

Re: CPLD för den absoluta nybörjaren

Inlägg av AndersG »

Absolut! Men jag ser lekandet i Digital mera som ett sätt att få en start på det hela, en början som man exporterar. Digital kan exportera både till VHDL och Verilog.
Användarvisningsbild
AndersG
EF Sponsor
Inlägg: 9233
Blev medlem: 25 februari 2008, 17:10:58
Ort: Mariehamn
Kontakt:

Re: CPLD för den absoluta nybörjaren

Inlägg av AndersG »

En sak som jag undrar över är klockan. En ATF150x har tre klockingångar. Att man behöver en klocka för synkron logik fattar jag, men om man har flera? Är det "fittern" som bestämmer hur de används?
guckrum
Inlägg: 1974
Blev medlem: 19 juni 2012, 09:04:27
Ort: Lund

Re: CPLD för den absoluta nybörjaren

Inlägg av guckrum »

Gissar att det är för att en enda CPLD skall kunna ersätta ett flertal komponenter i en design, komponenter som har helt olika funktioner och därmed eventuellt också olika klockor.
Användarvisningsbild
AndersG
EF Sponsor
Inlägg: 9233
Blev medlem: 25 februari 2008, 17:10:58
Ort: Mariehamn
Kontakt:

Re: CPLD för den absoluta nybörjaren

Inlägg av AndersG »

Så långt fattade jag oxå, men undrade närmast hur man vet vem som klockas av vad?
kodar-holger
EF Sponsor
Inlägg: 979
Blev medlem: 26 maj 2014, 12:54:35
Ort: Karlskoga

Re: CPLD för den absoluta nybörjaren

Inlägg av kodar-holger »

Från databladet:
The clock itself can either be one of the Global CLK Signals (GCK[0:2]) or an individual
product term. The flip-flop changes state on the clock’s rising edge. When the GCK signal is
used as the clock, one of the macrocell product terms can be selected as a clock enable.
When the clock enable function is active and the enable signal (product term) is low, all
clock edges are ignored.

Så jag gissar att du väljer vilken klocka som skall gälla per makrocell. Det ser ju lite så ut även i bilden som beskriver en makrocell.

(Jag vet egentligen inget. Bara kollade databladet)
guckrum
Inlägg: 1974
Blev medlem: 19 juni 2012, 09:04:27
Ort: Lund

Re: CPLD för den absoluta nybörjaren

Inlägg av guckrum »

Ja, någonstans finns en fil som mappar pinnarna på kapseln till signalnamn, resten fixar sig automatiskt.

Så länge du har din klocksignal på en av de tre klockpinnarna så kommer det att bli rätt. Sätter du klockan på en annan pinne kan det hända att fittern löser det ändå genom att dra signalen runt genom lite logik och muxar så att den ändå hamnar på vippornas klockingång till slut - men då är timingen inte bra. Dålig designmetodik.
Användarvisningsbild
AndersG
EF Sponsor
Inlägg: 9233
Blev medlem: 25 februari 2008, 17:10:58
Ort: Mariehamn
Kontakt:

Re: CPLD för den absoluta nybörjaren

Inlägg av AndersG »

Ko man skapar en fil som definierar vilken pinne som motsvarar vad. Jag får testa helt enkelt. Kom så långt att jag satte en DIL 24MHz oscillator på labbplattan bredvid, men mitt arbete har kommit emellan.
Skriv svar