Motsvarande kretsar för att bygga detta DSO.

Övriga diskussioner relaterade till komponenter. Exempelvis radiorör, A/D, kontaktdon eller sensorer.
ankan
Inlägg: 1091
Blev medlem: 12 november 2004, 01:50:35

Motsvarande kretsar för att bygga detta DSO.

Inlägg av ankan »

Har ett kretsschema där många komponenter är svåra att få tag i eftersom schemat ritades för typ 6 år sedan. Behöver hjälp med att hitta motsvarande kretsar eller bättre.

Schema är för ett PC-baserat Digitalt Oscilloskop.

EL4332 - Video MUX med inbuggd 2x förstärkning. Finns att få tag på men måste beställas. Utan förstärkning vore bra.
HI5667 - A/D omvandlare med 60MSPS. Behöver ersättas. 8-bit parallel.
AL422B - 3M-Bit Frame Buffer 384K x 8bit. Behöver ersättas.
FLEX 8K - FPGA, kommer antagligen använda Xilinx Spartan II.
74245 - 3-state buffer, Kanske kan reduceras och stoppas in i FPGAn?

Xilinx Spartan II behöver nog inte ha något EPROM som laddar kretsen vid start varje gång så hela den delen borde kunna plockas bort.

För mer info om detta DSO. Gå in på: http://www.chocbar.demon.co.uk/

Bild

För större bild, tryck här: http://pici.se/pictures/FYSG5N.gif
Senast redigerad av ankan 17 oktober 2006, 21:04:59, redigerad totalt 2 gånger.
Seven11
Inlägg: 547
Blev medlem: 13 maj 2004, 23:43:33

Inlägg av Seven11 »

ta inte bort Xilinx EEPROM:et för då kommer du få programmera kretsen via ICSP varje gång du startar upp DSO:et...
ankan
Inlägg: 1091
Blev medlem: 12 november 2004, 01:50:35

Inlägg av ankan »

Du har rätt. Jag blandade ihop FPGAn med PLD och CPLD kretsar.

Hur som helst är inte det, det största problemet just nu. Det som är viktigast är Frame buffert kretsen som har plats för minst 386K x 8bit samt A/D omvandlare som motsvarare eller är bättre än den på schemat.
Seven11
Inlägg: 547
Blev medlem: 13 maj 2004, 23:43:33

Inlägg av Seven11 »

74245 kan du nog förenkla in i FPGA:n med rätt buffrar eller kanske till och med vanliga 3-state-buffer med lite kringlogik.
ankan
Inlägg: 1091
Blev medlem: 12 november 2004, 01:50:35

Inlägg av ankan »

Misstänker det också. Då har vi A/D omvandlarna och Frame bufferten då. Alltså någon typ av minne som man kan läsa och skriva samtidigt från/till med olika klockor.
ankan
Inlägg: 1091
Blev medlem: 12 november 2004, 01:50:35

Inlägg av ankan »

Ingen ide att låta FPGAn ta hand om buffringen antar jag eftersom de inte har tillräckligt med minne, eller?

Skulle man kunna använda billigaste DDR minne till PC-datorer kanske?
Vet inte hur de fungerar, eller behöver det vara DDR2 minnen kanske?

Fast å andra sidan blir det en del pengar om man ska ha två DDR2-minnen och minsta jag hittat är på 256MB för 300:-
cyr
Inlägg: 2712
Blev medlem: 27 maj 2003, 16:02:39
Ort: linköping
Kontakt:

Inlägg av cyr »

DDR eller SDRAM är ganska jobbiga att använda. Om du ska göra det behöver du inte en hel DIMM (eller två), bara ett chip.

Hur stort sampeldjup vill du ha? I en halvstor FPGA finns kanske RAM till 10-20 tusen samples.

Hoppa över den gamla Spartan2.
ankan
Inlägg: 1091
Blev medlem: 12 november 2004, 01:50:35

Inlägg av ankan »

Gamla Spartan2 är den vi får från skolan. Antagligen för att den inte är allt för dyr. Vi har möjligheten att välja en bättre om det krävs.

Mellanbuffringen klarar av 384K samplingar dvs, ca 375000. Eftersom det är två kanaler så blir det ca 750000 samplingar på 8-bit vardera. Antar att det inte finns någon FPGA till rimligt pris som klarar av det, eller?

Frame Buffern hittade jag att den fortfarande säljs för typ 100:-/st + frakt och allt vad det nu är. Men finns det någon billigare lösning som ger samma resultat för lägre pris så är det självklart intressant.

Ang A/D hittade jag en ADC08100 (http://www.elfa.se/elfa-bin/dyndok.pl?dok=10239.htm) på ELFA. Den borde väll kunna ersätta HI5667, eller?
Tillverkaren har annars en krets som heter HI5767/6CBZ (http://www.elfa.se/elfa-bin/dyndok.pl?dok=5180.htm) men den är 10-bit, vilket är visserligen bättre men då räcker inte Frame Buffern.

ADC08100 klarar upp till 100MSPS vilket är trevligt men då blir Frame Bufferten en flaskhals som bara klarar 50Mhz.

När allt kommer omkring, man kanske skulle stoppa in frame buffern i FPGAn. Att kunna lagra 7,5msek med 50MSPS kanske är lite överdrivet. Vad har man för användning av stort lagringsdjup?

Vad kostar en Spartan II och en Spartan 3? Vad är skillnaden?

Spartan 3 kanske klarar lagringsutrymmet och att man kanske kan köra 100MSPS, eller?

Om man får plats med 20000 samplingar i en FPGA med 100MSPS så klarar man ner till 5kHz utan att behöva byta samplings hastighet för att få en hel period.
cyr
Inlägg: 2712
Blev medlem: 27 maj 2003, 16:02:39
Ort: linköping
Kontakt:

Inlägg av cyr »

Om du tar in data direkt från din ADC till FPGA så kan du sampla ner den innan du sparar i RAM (antingen bara släng bort en del, eller mycket bättre - räkna ut medelvärdet för N sampel och spara det).

Effekten blir ungefär samma som att byta samplingsfrekvens "på riktigt" men det krävs ingen extra hårdvara + att du kan känna av och spara små spikar om du vill (t.ex. så kan du på det sättet se en liten puls på 1us även om du samplar med en effektiv hastighet på 100Hz).

Om jag skulle bygga ett litet enkelt DSO kopplat till LPT så skulle jag ta den minsta Spartan3E (kostar 8 dollar hos digikey). Den har bara RAM till 8000 samplingar, men det räcker väl egentligen om man inte ska göra något avancerat. Den har logik så det räcker (mer än Flex8k) och även några multiplikatorer som kan vara smidigt att ha vid nersamplingen eller så.

Till ADC skulle jag föreslå MAX1449 (för att jag använt den, och för att man kan få samples från maxim).

Två såna + FPGA:n + ett konfigurationminne + 100MHz oscillator + spänningsregulatorer så är det i princip klart.

I stort sett bara att koppla in alla grejer till pinnar på FPGA, även parallellporten.
ankan
Inlägg: 1091
Blev medlem: 12 november 2004, 01:50:35

Inlägg av ankan »

Visste inte att du hade byggt ett själv förän jag sökte lite mer här på forumet. Hur färdigt är ditt?

Antar att det skulle bli för dyrt att sätta ihop ett liknande ditt. Måste hålla mig så långt under 1000-lappen som möjligt.

MAX1449 ser bra ut. 10-bit sample kanske är onödigt men varför inte.
Vad är det för skillnad på Spartan3E och Spartan3?
Den vi skulle få från skolan är en Spartan-II100. Jag kollade lite på Spartan3-200 som har rätt mycket RAM. Har dock inte lyckats förstå hur mycket som kan användas för sampling.

Du skulle jättegärna få skriva lite mer om ditt oscilloskop om man kanske skulle kunna få använda sig av några smarta lösningar. Läste det jag hittade som var 2 år gammalt här på forumet.

http://www.chocbar.demon.co.uk/ ser bra ut men det har några år på nacken och jag kan tänka mig att du har en del förbättringar, eller?
Kollar på färdiga lösningar eftersom jag inte har tid att utveckla allt från början innan en kurs börjar där vi ska börja CADa. Är dessutom ingen duktig programmerare för att göra mjukvaran till PCn sedan.
Så all hjälp du kan komma med är guld värt!
ankan
Inlägg: 1091
Blev medlem: 12 november 2004, 01:50:35

Inlägg av ankan »

Cyr:

Hittade din hemsida så det var dumt att jag frågade innan jag tittade. Men jag funderar nu efteråt på de lösningar du har gjort, och vilka av dem man skulle kunna behöva använda.
Att kunna ändra ingånge till en faktor av 1:1, 1:10 eller 1:100 verkar smart. Man skulle dock vilja att det sker automatiskt men det får vänta.

Vad har OPA655 på ADC-kortet för funktion?
Vad gör mellansteget?
Varför inte använda en ADC med inbyggd referenslogik?
Vad gör övriga kretsar på ADC-kortet?
Varför 100ohm i varje ände av kommunikationen mellan ADC och FPGA?
Varför ett register efter ADCn?


Smart att låta FPGAn ligga på ett eget kort och sedan låta ADC-korten vara plugins.


Till övriga läsare av tråden undrar jag om någon kan förklara,

Skillanden mellan Spartan-II, Spartan3 och Spartan3E?
Sedan funderar jag på hur man kan ta reda på hur mycket plats en FPGA har för att mellanlagra samplingarna?
cyr
Inlägg: 2712
Blev medlem: 27 maj 2003, 16:02:39
Ort: linköping
Kontakt:

Inlägg av cyr »

Först på ingången sitter relä för AC/DC-koppling och för dämpning 1,10,100. Sen skyddsdioder och ingångssteget som är OPA655. Det är för att få hög inimpedans, så man kan använda vanliga oscilloskop-probar.

Stegen efter är för att förstärka signalen (valbart) och för att göra DC-shift.
Jag har extern referns till ADC bara för att kunna styra den (med en liten DAC). Det används dels för att få en extra "förstärkning" av signalen (genom att sänka ref.) och dels så kan jag trimma bort förstärkningsfel genom att finjustera ref-spänningen.

Motstånden direkt på utgången av ADC är tänkt för att isolera den från belastningen (har för mig att det står något om det i databladet någonstans, men det är absolut inte *nödvändigt*). Registret efter är till för att driva kabeln och motstånden är för att impedansmatcha (flatkabel med varannan ledare jord).

Om du kollar databladet för FPGA:n så lär det stå hur många RAM-block den har och vilken typ. Du kan använda alla till att lagra samplingar, om du inte tänkt ha den till något annat.

XC2S100 har 40Kbit blockram (5000 8bits samplingar).

Det går att klämma in mer också, genom att använda själva logiken som minne - om den inte behövs till annat.

Skillnaderna mellan sp2 och sp3 är generellt att 3:an är snabbare och har mer funktioner och mer logik för pengarna. Bland annat har sp3 bättre klockhantering och multiplikatorblock. Sp3e har lite ytterligare små förbättringar.

Egentligen är det nog inte så himla mycket som skiljer som jag tror du har nytta av, kanske enklast att köra på det du får från skolan...
ankan
Inlägg: 1091
Blev medlem: 12 november 2004, 01:50:35

Inlägg av ankan »

Hur kan Sp3e vara bättre än Sp3 när de är billigare?

Visst, skolans XC2S100 kanske duger men det är ju inget fel med en nyare och snabbare när prisskillnaden är marginell eller som när det gäller Sp3e som verkar vara billigare tom.

Vad gör AC/DC-kopplingen?
Förstärkningen av signalen är för att får maximal utnyttjande av ADCn?
Hur fungerar det med alla förstärkningar och dämpningar vid visandet av amplituden på datorn?
Hur switchas de olika reläna om?

Jag misstänker att du skriver PC-mjukvaran från scratch, men har du sett någon färdig gratisprogramvara för att köra mot seriell eller parallel-porten?
Skulle man kanske kunna mjukvaran till Bitscope kanske?


Cyr, jag gillar din lösning. Du har tänkt på många saker.
Skriv svar