-
Thread
Renesas GreenPack
bescheidene Funktionalitaet mag das noch in Ordnung gehen und erlaubt es Anfaengern sich an Verilog/VHDL vorbei zu schummeln. Wir wollen mal nicht vergessen das es auch noch Menschen gibt die eine SPS mit Ladder/Kontaktplan programmieren. :-D Vanye
mich interessanten Stueckzahlen nur 0.8Euro, Einzelstueck 2.56Euro. Dafuer bekommt man einen 14Bit ADC, Referenz, DAC, SPI, I2C und den ganzen Logickram. Okay, SNR ist etwas duerftig. Aber fuer den Preis kann man da schon was draus machen. Das koelnisch Wasser unter den ADCs :-D Vanye
-
Thread
Formale Verifikation als Privatmann
. Zum Beispiel als Einstieg: https://pepijndevos.nl/2019/08/15/open-source-formal-verification-in-vhdl.html
nur eine Sprache. PS: Noch eine Seite zum Einstieg: https://vhdlwhiz.com/formal-verification-in-vhdl-using-psl/
-
Thread
Guard Bits Optimierung
bits und ist etwas anderes als der beschriebene bit-growth. Bit growth ist deterministisch und das VHDL Typsystem hilft da auch mit. https://opensource.ieee.org/vasg/Packages/-/blob/1076-2019/ieee/fixed_pkg.vhdl?ref_type=tags#L44 Guard-bits sind dann eine absicherung gegen solche Dinge: Dergute
explizit die Wertebereiche fuer jedes Zwischenresultat hinschreiben. Immerhin vermeidet man die VHDL-Pitfalls wie bei der Addition von signed und unsigned. Auch ein Klassiker, der in der Verifikation immer wieder Alarm schlaegt.
-
Thread
Forge FPGA, kostenloser eval kit
Datenblatt Kapitel 8, https://www.renesas.com/us/en/document/dst/slg47910-datasheet?r=25546631, per SPI Flash, per uC und per OTP. Das By Factory ist ein weiteres Zusatzfeature
scheinen mir die richtige Lösung für so manche Anwendungen, wo mal schnell ein ADC oder ein serieller Datenstrom angeschlossen werden muss, wie z.B. DSD oder PDM und man außer etwas Dezimation nicht viel braucht.
-
Thread
Spartan 3/6 welche Constraints braucht man
der Referenz definiert. Also werden die 16bit breiten ADC Datenleitungen intern nicht weit voneinander entfernt geroutet, sondern möglichst gleich lang um gleiche Latenz zu bekommen? Wie sieht das mit einem SPI Master im FPGA aus? Muss ich hier irgendwelche
= IN x.y ns VALID z ns BEFORE "ADC_CLK"; NET ADC_DATA<0> TNM = "TG_ADC_DATA"; NET ADC_DATA<1> TNM = "TG_ADC_DATA"; NET ADC_DATA<2> TNM = "TG_ADC_DATA"; ... [/pre] > Wie sieht das mit einem SPI Master im FPGA aus? Muss
-
Thread
Ist folgende Aussage zu FPGA & VHDL korrekt?
Was möchteste machen, ne analoge Spannung via ADC diskretieren und die digitalisierten Werte vom ADC per SPI abholen? Sollte gehen... ansonsten versteh ich die Frage nicht. Mal mal auf, was du eigentlich meinst.
Damit diese Emulation des ADC samt Multiplexer halbwegs realitätstreu erfolgt, muss natürlich der ADC bzw. sein Registermodell ordentlich nachgebildet werden, ebenso auch das Timing bzw. die SPI-Betriebsart. Es hängt ganz empfindlich
-
Thread
Delta Sigma Demodulator (3 Kanäle) besser auf CPLD oder FPGA
/s9y/archives/31-SPI-Slave-im-CPLD.html > > Bei 3 mal 16 bit würde ich das mit der parallelen Ausgabe nochmal > überdenken. Ich vermute eine SPI wäre da die bessere Option. > Die 3 Kanäle plus das FPGA/CPLD können
weiss ich doch, ob es hoch oder runter wandert? Lutz Locus schrieb im Beitrag #7297880: > Nö, SPI ist simple (xchieberegister) das sollte ein CPLD können. Da wird > Dir sicher ein Lothar auf ein Beispiel verweisen können: > http://www.lothar-miller.de/s9y/archives/31-SPI-Slave-im-CPLD.html
-
Thread
FPGAs in der Lehre
Funktionen zusammenpappt, statt diese Aufgabe in 1 Zeile VHDL zu erledigen.
. Für mich, der von unten her an VHDL gekommen ist, war das Buch "VHDL Synthese" genau richtig und für andere wird es nicht passen.
-
Thread
FPGA - embedded Linux Interconnect Ansatz
Leute, ich habe mal eine Frage - und zwar geht es um den konzeptionellen Ansatz. Ich habe 8 ADC's an einem FPGA angeschlossen, die mit einer relativ hohen Sample-Rate Daten einfangen (200 kHz). Diese Daten sollen in ein embedded Linux System, möglichst via SPI. Meine Idee war -> der FPGA
Schmerzen macht ist, dass das Alignment der Daten passen muss. Sobald eine SPI Transaktion startet, sollte die SPI immer erwarten, dass die Daten der ADCs immer in der korrekten Reihenfolge kommen (ADC0, ADC1, ADC2, etc...) was dann mit einem normalen FIFO so erstmal nicht machbar
-
Thread
Prozessoren als Soft-IP
zu wenig moeglichkeiten um Fourier transforms zu berechnen * Es gibt zu wenig Analoge resources (ADC,DAC) im Controller * Es gibt zu wenig digitale resources (I2C, SPI, Ethernet...) im Controller * Es wird zuviel power benutzt * Das volume die meinen Controller benutzt ist zu grosz usw Erzahl
Aspekten der Ausfallssicherheit sehr vorangebracht. Man muss sich aber vorneweg fuer entweder die VHDL- oder Verilog-Loesung entscheiden, mixed language simulation ist wieder sehr muehsam und nur kommerziell zu stemmen.
-
Thread
8 Kanal ADC LTM9011-14 an Zynq Ultrascale anschließen
Achso, genau wie Gustl sagt, haben wir die Inbetriebnahme gemacht. Per SPI den ADC auf ein festes Pattern eingestellt und dann solange das IDELAY am Clock verstellt bis man die Grenzen hat, wo es gerade nicht mehr passt. Dann auf die Mitte im fertigen Design als fixed Delay
So, das konfigurieren vom ADC scheint schon mal zu funktionieren (über SPI). Mein Test Muster herhalte ich noch nicht zurück, muss also das Auswerten vom frame-clock noch richtig machen. Gibt es da eventuell ein Code Schnipsel
-
Thread
Mit welchem FPGA anfangen/einsteigen?
ein beliebiges FPGA Board nehmen das auch eben Spielwiesen bietet. Taster, Schalter, LEDs, Display, ADC, DAC, RAM, Flash, I2C/SPI Bausteine, ... wichtig ist, dass das von einer aktuellen Entwicklungsumgebung unterstützt wird. Denn du willst ja den aktuellen Stand lernen. Marvin K. schrieb im Beitrag
es nicht an, d.h. fuer ernstes High-Speed muss man haendisch optimieren, was man mit klassischem VHDL schon mal vergessen kann.
-
Thread
ADC IP für AD7961 funktioniert nach synthese nicht
Takt: Du könntest auch bei deinen 100 MHz DDR IOs verwenden, dann bekommst du auch zumindest 100 MHz SPI hin. Für > 3 MSample/s würde das genügen.
Welchen Baustein verwendest du denn? Auch für den AD7961 steht im Datenblatt typischerweise 250 MHz SPI Takt. Ich sehe gerade, dass ich das auch nicht richtig gemacht habe, ich verwende einen SPI Takt von 125 MHz. Funktioniert trotzdem aber wohl nicht so gut weil die Pause nicht so lang ist. Korrekt
-
Thread
Sinc3 Filter von VHDL in Bit Logik umsetzen
Hallo, Aktuell bastel ich gerade an einer Schaltung mit einem AMC3306 ADC, mein erster Kontakt zu einem Sigma-Delta ADC. Mein Problem ist das ich keinen blassen Schimmer von VHDL, FPGA und dem nötigen Filter habe. Mit hilfe der Bilder Sinc3.png (https://www.ti.com/lit/an
Also braeuchtest du irgendeine > Hardwareunterstuetzung an deinem ESP, damit du nicht jedes Bit vom ADC > einzeln per Software reinbitten musst. Also irgendsowas wie ein > I2S/SPI/USART Hardwareinterface, was sich entsprechend zurechtbiegen > laesst. Vorher musst du dir ueber Filteranforderungen und
-
Thread
Einen Softcore (AVR) an andere FPGA anpassen?
die ganzen Module (Usart, Timer, PIOs, SPI,.. ) an den Datenbus gehangen?
das > Ergebnis geht dann als Lese-Daten-Bus zur CPU zurück. Das würde ja zu dem hier passen: [vhdl] bus_out [cnt_add_bits] = | tmp_busses_bits; [/vhdl]
-
Thread
ARTY S7 Board, AD-Wandler,FPGA SPARTAN
-16.1.pdf ADC Sequencer . Start wait ... Stop ....get_result... VHDL Code .... https://www.embeddedrelated.com/showarticle/89.php How to Create ADC Design in MAX 10 Device Using Qsys Tool Gruss Holger.
https://www.intel.com/content/dam/www/programmable/us/en/pdfs/literature/hb/max-10/archives/ug-m10-adc-16.1.pdf > ADC Sequencer . Start wait ... Stop ....get_result... > VHDL Code .... > https://www.embeddedrelated.com/showarticle/89.php > > How to Create ADC Design in MAX 10 Device Using Qsys
-
Thread
CRUVI - ist das hier um zu bleiben?
GBit/s. - Ist spezifiziert wie viel Strom ein Modul ziehen darf? - Ist für den LS Connector eine SPI Belegung spezifiziert? Gerne auch mit mehrenen SDOs falls man wie ich einen ADC IC mit mehreren Kanälen verwenden will. Und eine Anmerkung: Beim LS Modul finde ich die Anordnung bezüglich der Richtung
Analogzeug am anderen Ende der Platine haben. Naja. Andererseits, ich könnte auch meinen langsamen ADC der nur SPI verwendet ebenfalls mit einem CRUVI-HS Stecker anschließen. Warum auch nicht. Den schnellen ADC layoute ich gerade, und zwar für CRUVI-HS. Leon B. schrieb im Beitrag #6923712: > Hi
-
Thread
Einsteigerfreundliches board für Roboter motion
Stefan S. schrieb im Beitrag #6633819: > Wäre ein adc so ein hardwarspezifisches Bauteil? Ic brauch das > mindestens um den Strom durch die Motoren zu messen. Der ADC wäre wiederum ein externes Modell / Teil der Testbench. Auch das kannst du natürlich
Stefan S. schrieb im Beitrag #6633819: > Wäre ein adc so ein hardwarspezifisches Bauteil? Ic brauch das > mindestens um den Strom durch die Motoren zu messen. Ein ADC *im* FPGA wäre evtl. so ein Bauteil. Allerdings kann man den meist auch einfach als
-
Thread
VHDL Komponente, mehrfach instanziieren aber unterschiedlich bedaten.
Hallo allerseits, ich bin bzgl. VHDL und Ausnutzung der Features eher konservativ unterwegs, haette da aber jetzt gerne mal ein Problem :o) Ich habe verschiedene SPI-Interfaces mit identischen Chips oder zumindest Protokoll-kompatiblen Chips, aber jeweils unterschiedlicher Topologie: * 2x ChipSelect mit 4-Kanal+AUX ADC * 2x ChipSelect mit 3-Kanal ADC * 4x ChipSelect mit 8-Kanal ADC Also, die SPI-Master-FSM ist eigentlich immer die gleiche, aber die Kommandosequenzen sind in den 3 Faellen halt unterschiedlich.
-
Thread
arduino Platine mit microCore und 100baseT
Fabric für die Konfiguration, so dass der Chip sofort nach dem Einschalten betriebsbereit ist. > -ADC, ca 10 bit, 10kS/s, 4 Kanäle Besser 12-bit, 10kS/s, 8 Kanäle mit seriellem SPI-Interface. Zuletzt habe ich den ADC128S102 benutzt. Das ist ein HiRel Teil und somit unnötig teuer. Ich bitte um Vorschläge
Tolle Idee Klaus! >Besser 12-bit, 10kS/s, 8 Kanäle mit seriellem SPI-Interface. >Zuletzt habe ich den ADC128S102 benutzt. Das ist ein HiRel Teil und >somit unnötig teuer. Ich bitte um Vorschläge. Was hälst du von dem Purschen: https://www.digikey.de/product-detail
-
Thread
Sipeed Lichee Tang FPGA mit RISC-V Core aus China unter 20€
4Mb x 16) (ISSI IS42S16400) Accelerometer, 3-Axis, SPI interface (Analog Devices ADXL362) DAC, 12-bit, SPI interface (Analog Devices AD5681) Temperature sensor, I2C interface (Analog Devices ADT7420) Thermal resistor Photo resistor
jeweils CTS und DTR - JTAG Anschluss - 20pin LVDS - 2× Mini-DIN-6 für Mouse und Keyboard - 8x ADC auf Stiftleiste herausgeführt - 1x SPI (SCK,MISO,MOSI,CS, 3.3V, GND) - 1x I2C - 12x I/O auf Stiftleiste herausgeführt - je 4x 5.0V, 3.3V und GND auf Stiftleisten Das Sipeed Tang Primer Board
-
Thread
microCore, ein Echtzeitprozessor in VHDL für FPGAs
Resourcenverwaltung an die Hardware delegieren kann. Inklusive MUTEX (MUTual EXclusion). Nehmen wir mal den ADC128S102, ein ADC mit SPI-Interface und vorgelagertem 8-Kanal MUX. Den kann man in einem Multitaskingsystem in uForth so ansprechen: [code] <kanalnummer> ADC ! ADC @ Sample ! das wäre in C:
blub schrieb im Beitrag #6589741: > -FPGA bereits fertig programmiert (schlüsselfertig) > -ADC, ca 10 bit, 10kS/s, 4 Kanäle > -ca 32k RAM/ROM > -ca 10 I/O auf 3.3V oder 5V > -ca. 2x PWM, 2x SPI, 2x I2C > -(special) 2x EXCEPTION/PAUSE-Eingänge, 2x Interrupt-Ein. > -Spannungsversorgung und
-
Thread
Wie wird aus einem Cyclone II FPGA eine Nios II CPU?
> Aucxh dann wird er nicht wie man aus den Phanatasterein des TO > heraushören kann, VHDL-Anweisungen vom Firmware-ROM laden, decodieren > und Ausführen. Ja, schade eigentlich :-). So ein VHDL-Interpreter im FPGA haette schon was.
[/vhdl] Und damit kann ich im eigentlichen VHDL dann sowas machen: [vhdl] architecture IMPL of test is begin led <= "1010"; end architecture; [/vhdl] Das zaubert mit ein "an/aus/an/aus"-Muster
-
Thread
Welcher FPGA für den Einstieg mit VHDL?
Einsteiger. Typische Einsteigerprojekte sind sowas wie UART, Lauflichter, irgendwas mit Taster, selber mal SPI machen, Daten erfassen und ausreichen, vielleicht VGA, ... Und genau da bieten diese typischen FPGA Boards recht viel. Sogar das kleine MAX1000 hat einen ADC mit dabei, mehrere LEDs, Taster, Beschleunigungssensor
Eine Kurze Einführung: "VHDL by Example" von Blaine Readler. Hat einen sehr entspannten Schreibstil. Ist ein 100 Seiten Büchlein. "FPGA Prototyping by VHDL Example" Pong P. Chu. Ist zwar für XILINX Spartan-3, aber geht genauso
-
Thread
HMCAD1511 Interface
Über Tips bin ich dankbar! Noch ein Nachtrag/Hinweis: Zuerst hatte ich einen Fehler in meinem SPI und habe statt 16 nur 15 Datenbits gesendet. Als Resultat wurde der ADC ziemlich heiß und hat nichts ausgegeben, also auch nicht LCLK und FCLK.
Ich musste noch die LCLK Phase ändern und den Takt um 1 nach vorne schieben. Insgesamt gebe ich als SPI diese 6 24 Bit Worte aus: x"310101" -- clk_div = 1, single channel x"3A0202" -- input 1 for all ADC2,1 x"3B0202" -- input 1 for all ADC4,3 x"420000" -- phase LCLK = 270° x"530010" -- no delay
-
Thread
Genesys 2 (Xilinx Kintex 7): Audio-Codec Implementierung und Filteranbindung
VHDL-Dateien.
möchte nur gucken ob nicht in dem Code von mir ein Fehler steckt. Daher habe ich jetzt das Python in VHDL übersetzt und in die Simulation gesteckt, das sieht jetzt so aus: ADC erzeugt Sweep -> I2S -> FIR -> I2S -> DAC Und der UART gibt die ungefilterten und die gefilterten Werte aus mit 8 MBaud in
-
Thread
Quartus Prime Lite Failed to find INSTANCE
ändert nichts am Bug. Gibt es vielleicht im Code ein Problem? Der Compiler läuft durch. Der Code: [vhdl] -- ADC reader: reads data from ADXL345 library ieee; use ieee.std_logic_1164.all; use ieee.numeric_std.all; entity g_reader is port ( clk_50: in std_logic; -- 50 MHz clock reset_n : in std_logic; -- reset signal (active low) -- SPI interface CS_N : out std_logic; -- connected to chip select of g sensor SCLK : out std_logic; -- spi clock SDIO : inout std_logic; -- spi data (bidirectional) -- data output
-
Thread
HyperBus Ideen
ein PDF verlinkt, da kann man das Timing schön sehen. Das ist also eher ein serielles Interface wie SPI, nur eben OctaSPI mit DDR und Wartephasen und bidirektionalen Leitungen.
CK , RESETNeg );[/vhdl] Dann gibt es Wires: [vhdl] wire DQ7_ipd; wire DQ6_ipd; wire DQ5_ipd; wire DQ4_ipd; wire DQ3_ipd; wire DQ2_ipd; wire DQ1_ipd; wire DQ0_ipd;[/vhdl] Die
-
Thread
Vivado Simulation
fuer ein SPI Standardmodul, was du zur Verifikation dann immer wieder nehmen kannst. Verschiedene SPI Modes werden dann idealerweise durch ensprechende Generics gesetzt. Ich mache sowas z.B. fuer den Startup
Da wird man betr. div. Memories schon mal fuendig. Alles andere wuerde ich nicht mehr in plain VHDL nachbauen. Das geht besser mit Software-Co-Simulation, sofern es nicht zwingend aus einem HDL-Guss sein muss. Fuer I2C/SPI-Backends (register) bediene ich mich der herkoemmlichen XML-Techniken um die
-
Thread
FPGA mit minimalem Schaltungsaufwand
drastisch einschränkst. Du brauchst für alle modernen FPGAs einen Dual Step-Down, und einen externen SPI Flash und optional einen Quarz. Das sind 3 externe Bauteile, die schnell verdrahtet sind. Der Aufwand steckt mehr in der Einarbeitung, und im VHDL/Verilog Code. Ich würde also erst mal den bestehden
dazu den Code schon mal in der Simulation testen. Die Möglichkeit die Konfiguration einfach per SPI einspielen zu können finde ich sehr reizvoll.
-
Thread
LVDS Clock at Artix7?.
To configure the Clockdivider AD9508 i use a carefully crafted el'cheapo SPIish interface: [vhdl]library IEEE; use IEEE.STD_LOGIC_1164.ALL; use IEEE.NUMERIC_STD.ALL; entity AD9508_SPI is Port( clk: in std_logic; start: in std_logic; data: in std_logic_vector(8*6*4-1 downto 0);
when counter < 1663 else '1'; nCS <= '0' when s_control = s_send_conf else '1'; end Behavioral;[/vhdl] clk: in std_logic; that is a 100 MHz Clock in the FPGA start: in std_logic; is a start signal, it starts the SPI action data: in std_logic_vector(8*6*4-1 downto 0); are the 6*4 Bytes, Registers
-
Thread
Aktuelle Boards
, Buttons, ein kleines LCD Display, 7-Segment-Anzeigen und SRAM. Vielleicht auch noch einen IC mit SPI, einen mit I2C und VGA. Geht wohl nicht alles gleichzeitig bei der begrenzten IO-Zahl, aber ich meine, die Boards sind ja fein, aber für Anfänger die nicht Blockdesign mit CPU sondern Hardware in VHDL
dann Schalter, Buttons und LEDs, mal ein Schieberegister (für noch mehr LEDs^^), einmal etwas mit SPI (ADXL362 ?), dann noch etwas mit I2C (ADT7420 ?). Schick wäre auch einmal ADC und DAC , ein Display oder gleich VGA? Dann könnte der Anfänger schon so Dinge machen wie eine Wasserwaage mit den LEDs
-
Thread
Paralelle Delay Zeiten
der delays/ontimes/offtimes von einem µC "übergeben"? Ich habe nicht sooo viel Erfahrungen mit VHDL, habe bislang erfolgreich Adressdecoder und Rom Mapper für einen 80er Jahre 8 Bit Rechner geschrieben. Vielleicht gibt es ja auch bereits einen programmierbaren Chip der sowas könnte? Wäre dankbar
dez offtime = 0 dez Das wäre dann die zweite Fingerübung... ? Insgesamt müssen dann per SPI also 8x 10 Bytes (pro Ausgang 3x3 Bytes für die Zeiten plus 1 Byte für die Triggerbedingung) zur Konfiguration übertragen werden. Gleichzeitig könnten dann noch "kostenlos", weil SPI ja zeitgleich bidirektional
-
Thread
VHDL Timing Constraints nicht erfüllt
-gb- schrieb im Beitrag #5937183: > Du hast einen AD und DA in VHDL geschrieben?! Ne, nur die Anschlussschnittstellen für die Datenübertragung per I2C / SPI :D Markus F. schrieb im Beitrag #5937192: > Das wird nicht der Grund für die Timing-Fehler sein, aber
counter_filter := 0; if (error_from_ADC = '0') then current_state <= waitForADC; end if; --Auf nächstes Sample warten when waitForADC
-
Thread
Signale mit 32Mbit/s extern speichern
SD-Karte kannst du bei der Datenrate im SPI Modus vergessen, das geht nur im 4 Pin Modus. Dann aber möglich. USB wäre möglich, aber nicht das was du drauf hast. Das kommt sicher nur auf <1Mbit. Ethernet, keine Ahnung, habe ich noch nie
machbar mit den fertigen FT2232H Modulen von FTDI und einem FPGA Board mit vielen freien IOs. Wenn du VHDL für den snchronen FT245 haben willst melde dich, habe ich aber auch irgendwo hier im Forum hochgeladen. Damit schafft man knapp 40 MByte/s.
-
Thread
einstellbaren 48-52kHz Sinus erzeugen,
& PWM_in); end if; end process; PWM_out <= PWM_Accumulator(16); end PWM_arch; [/vhdl] Dann nutz ich einen cordic ip-core un berechne mir einfach von einem zähler den passenden sinus. Funktioniert. Sehr schön. Jetzt muss ich eigentlich nur noch die FFT passend zum ADC "synchronisieren
Reports etc. irgendwo > sehen können? Das steht im Schaltplan. Ich finde das Zusammenlegen der SPI von ADC, PGA und DAC auf dem Board nicht sehr anfängerfreundlich. Damit wird das VHDL-Design m.E. recht umständlich. Duke
-
Thread
Timingprobleme, welche Constraints benötige ich?
Domänen: [vhdl] process begin wait until rising_edge(clk100_45); if counter_0 = 0 then counter_45 <= 0; else counter_45 <= counter_45 +1; end if; end process; [/vhdl] Das müsste gehen weil
So, da bin ich wieder. Hatte leider erst jetzt etwas Zeit. Zur Übersicht: Ich habe an den ADC 3 ADCs angeschlossen die jeweils 4 SDO Leitungen haben. Dazu habe ich für jeden dieser ADCs eine VHDL Komponente. In jede dieser Komponenten möchte ich jetzt für jede der 4 SDO Leitungen einen SerDes
-
Thread
Signale verzögern IDELAY
, ich habe eine generelle Frage, aber auch eine konkrete Anwendung. Das ist eine Platine mit ADC und SPI, zwischen der Platine und dem FPGA sitzt ein Digitalisolator. Der verzögert die Signale um ein paar ns. Jetzt geht also die SPI_CLK und das SPI_CONV vom FPGA zum ADC und die SPI_DO gehen vom
. Hast du mal die Typenbezeichnung des ADC und des Isolators? Spricht was dagegen, den SPI Takt langsamer zu machen?
-
Thread
LVDS VHDL Beispielcode
Daten austauschen, als Test. Weil LVDS eigentlich lediglich ein IO-Standard is, kannst du auch jede SPI- oder RS232-Schnittstelle statt mit einer Leitung Single-Ended auch differentiell mit 2 Leitungen und LVDS-Pegeln übertragen. Das machst du dann aber nicht im VHDL-Code, sondern im Constraint-File.
Lothar M. schrieb im Beitrag #5563215: > Das machst du dann aber nicht im VHDL-Code, sondern im Constraint-File. Bei Xilinx Vivado kann man durchaus die entsprechenden LVDS-Blöcke in VHDL instantiieren: [vhdl] OBUFDS_clk : OBUFDS generic map ( IOSTANDARD => "
-
Thread
SPI in VHDL, unerklärliches Verhalten
Hallo, ich möchte einen ADC vom Typ MCP3008 per SPI ansprechen. Dazu benutze ich folgenden Prozess, um eine Kommunikation zu erreichen, wie sie in FIGURE 6.1 auf Seite 21 des Datenblatts zu sehen ist: [vhdl] process(fxclk_signal
wie ein Template einfach aus dem Kopf holen zu können. Der vollständige MCP3008/SPI VHDL Code ist zu finden hier: https://www.micro-nova.com/resources/ unter "Tutorials & Example Code", "On-board ADC Reference Design" (ich wollte die ZIP-Datei jetzt nicht einfach so verlinken).
-
Thread
TinyFPGA BX – FPGA Entwicklungskit für wenig Geld
github.com/cliffordwolf/icestorm) verwendet werden. Abgesehen von Hardwarebeschreibungssprachen wie [VHDL](/articles/VHDL), [Verilog](/articles/Verilog), [Migen](https://m-labs.hk/migen/manual/introduction.html) oder [Chisel](https://chisel.eecs.berkeley.edu/) wird auch die grafische Schaltungseingabe unterstützt
ins Flash geschrieben und ist > Write-protected. Zerschiessen kann man ihn höchstens wenn man per SPI > WriteProtect aufhebt und einen ChipErase ausführt. In diesem Fall gibt > es auf der Unterseite Pads für die Neuprogrammierung des Bootloaders, > das geht über SPI, sollte also mit einem RasPi
-
Thread
FIR Filter auf FPGA implementieren
Don't care. [/code] Warum das wichtig ist, siehst hier: https://www.csee.umbc.edu/portal/help/VHDL/misc.html
Ich kann die Peripherie schnell und umfassend an die Umgebung anpassen. LVDS kein Problem. Schraege SPI-Interface, kein Problem. Anzahl der Guardbits fuer den Algorithmus, auch kein Problem. Der FIR als solcher in VHDL, erst recht kein Problem. Und unter dem Strich spare ich Zeit. Und wenn die Ansprueche
-
Thread
Hilfe mit Altera Cyclone II (bzw. III)
Serial verwendet. > Der Flash ist sicher parallel an den FPGA angebunden, hat aber auch eine > SPI-Schnittstelle. Ich vermute einfach mal das die Konfig parallel > geladen wird und SPI nur zu Servicezwecken genutzt wird, evtl. sogar > garnicht verbunden ist (habs noch nicht gemessen). Welchen Flash meinst Du jetzt? Der EPCS kann nur SPI und das wird auch genutzt. Der S29GL064N ist ein paralleles Flash ohne SPI, der mit der FPGA-Konfiguration höchstwahrscheinlich nichts zu tun hat. Parallel konfigurieren geht nur "passive", braucht
-
Thread
Universal LCD+Input Modul mit MachXO2
Hallo Duke, was für ein Display und mit welcher Auflösung? Ansteuerung über SPI oder parallel? Markus
den Einsatz eines DualPortRam sehen. Die paar Daten zur Anzeige einer Kurve könnte man auch per SPI von einem zum anderen senden.
-
Thread
Gutes FPGA Starter-Kit?
QuickLogic, Microsemi wobei Xilinx schon immer Nr. 1 war. Meine Kenntnisse sind ca 10 Jahre alt. VHDL kannst Du mit einem Buch lernen aber die ganze Sache findet rein am PC statt. Du brauchst eigentlich gar kein Board. Wenn die Logic Zeitdiagramme das zeigen was Du willst, Deine Constraints richtig
protection • Hirose FX2 expansion connector • Three Digilent 6-pin expansion connectors • Four-output, SPI-based Digital-to-Analog Converter (DAC) • Two-input, SPI-based Analog-to-Digital Converter (ADC) with programmable-gain pre-amplifier • ChipScope™ SoftTouch debugging port • Rotary-encoder with push-button
-
Thread
FPGA DEV Board
Ich möchte etwas vhdl damit lernen und irgendwann mal mit einem Arduino verbinden. Geht das?
ist es bei mir nie, aber hat schon mal fehlerhafte Resultate produziert und mit dem Einhalten der VHDL-Standards hatten se's auch nicht so..
-
Thread
FPGA Grundlagen ADC
Ein msp430 ist sonst ein intelligenter ADC...wie die mit ADC10/12 oder SD16 bestückten Typen. Die ganzen Freiheiten betr. Abtastung überlässt man am besten der SW-Konfiguration. Interface SPI oder I2C.
hier mal auch etwas Code mitnehmen zu können. Z. B. etwas leicht anpassbarer Code für die ADCs mit SPI Anschluss von AD. Mit Referenzimplementierung meine ich eben ein vollständiges Beispiel das zeigt wie man mit den Clocks und so im FPGA sinnvollerweise umgeht wenn man einen ADC von einem bestimmten
-
Thread
MAX1000 Erfahrungen
clkCounter( 22 ); -- output the highest bit to the led END IF; END PROCESS; END logic; [/vhdl]
:= 'X'; -- reset_n pll_clk : out std_logic -- clk ); end component unsaved; [/vhdl]
-
Thread
ADC liefert nur gerade Werte.
Inhalt als fertiges Sample übernommen. Soweit so gut. Jetzt bekomme ich aber nur gerade Werte vom ADC. Im Datenblatt steht Zweierkomplement, in VHDL wandele ich das so um: [vhdl]output <= std_logic_vector(unsigned(not(input)) +1);[/vhdl] Habt ihr irgendeine Idee was falsch laufen könnte? Wenn ich Statt der ADC-Werte einen Zähler im FPGA verwende und dessen Wert zum PC schicke funktioniert das wunderbar. Was ich auch nicht verstehe ist wieso [vhdl]output <= std_logic_vector(to_unsigned(to_integer(signed
-
Thread
5 Volt FPGAs
VHDL-Neuling schrieb im Beitrag #5005404: > Des Weiteren wäre es interssant zu wissen ob es fertige Lösungen mit > ADC/DACs gibt. Da wären die Cypress PSoC 4 oder 5 für Dich interessant. Eine Mischung
VHDL-Neuling schrieb im Beitrag #5005404: > Des Weiteren wäre es interssant zu wissen ob es fertige Lösungen mit > ADC/DACs gibt. Altera (jetzt Intel) MAX10-Serie. Die mit dem "A" im Namen. Mit "S"