FPGA SPI kontrolierius ne mikroprocesorius

S

sebas

Guest
Sveiki, turiu aš FPGA į prieigą per SPI sąsają ne FPGA IC dizainas. FPGA turiu SPI valdiklio. "SPI valdytojas turi SPI sąsajos signalus, iš vienos pusės, kuris turi prieigą IC registrus) ir adreso ir duomenų miesto autobusais kartais balansyras) iš kitos pusės. Dabar aš noriu įdėti informaciją skaityti SPI valdiklio viduje RAM. Normalus požiūris, mano manymu, būtų naudoti mikroprocesorių, kuris jungia SPI valdytojui, iš vienos pusės, ir į kitos pusės RAM. Mikroprocesorius skaityti SPI valdiklių registrus ir rašyti juos RAM. Ar yra paprastesnis požiūris, pagal kurį mikroprocesorius nereikia? Gal kontrolierius kad nėra darbo? Ačiū!
 
Taip, aš pamačiau, kad siūlai, tačiau ji neturi atsakyti į mano klausimą. Turiu SPI valdiklio. Noriu rašyti, skaityti iš SPI vergas Bram. Mano klausimas buvo, kaip man daryti, kad be mikroprocesoriaus pradėti perdavimą.
 
Atsiprašome aš, nei aišku, ko jums reikia, aš vėl perskaityti pranešimą, jūs sakote, turite SPI valdiklį į savo FPGA, kad aš manau, galite skaityti ir rašyti vergų SPI prietaiso, jūs turite galvoje, kad jums reikia vidaus RAM valdiklį kad perduoda, SPI duomenis su avinu, manau, tai gali būti įmanoma, naudojant vidinį signalą, bet tu sakai, kad RAM yra vienoje pusėje FPGA ir SPI kitas, aš supainioti, kodėl negali būti šių dviejų bendrauti ? Aleksas
 
Prašome žiūrėti pridedamą vaizdą. Manau, kad turite teisę su ram valdytojo. bet kaip avinas kontrolierius prijungti SPI šerdies?
 
Deja, aš niekada nesinaudojo Bram ar žinote ką nors apie tai, bet gal kas nors turi atsakyti dabar, kad aišku, ką jums reikia. Aleksas
 
Nemanau, kad tai tikrai apie į Bram. Tai gali būti išorės RAM,. Mano jausmas yra tai, kad aš nesuprantu, ką nors paprasto. Gal idėja sukurti savo nuosavą branduolį, kad jis tiesiog rašo RAM tiesiogiai vietoj opencore.org branduolių kur SPI kontrolierius rašo skaityti kai kuriose vidaus registruose, kurie turi būti prieinama per adreso ir duomenų autobusu informaciją.
 
Aš tik naudojamas SPI su AVR kontrolierių, bet taip neturėtų būti labai sunku. Jei FPGA kapitonas ir kitas prietaisas yra vergas, jūs turite įgalinti vergą, siųsti žemo dažnio remia vergas ir kiekvienam kylant arba mažėja krašto parą CLK (priklausomai nuo konfigūracijos), rašote vieną bitą produkcijos, o jūs skaitote vieną bitą įvesties, byte (priklausomai nuo prietaiso, kai reikia 2 arba 3 baitai) jūs panaikinkite vergą (paprastai atsigriebti liniją) Manau, kad galite tai padaryti su pabaigos valstybės mašina, apibrėžti, baitą būti raštu ir baitas skaityti signalo byte_in: std_logic_vector (7 downto 0). signalas byte_out: std_logic_vector (7 downto 0) tada naudoti procesą aktyvuojamas ne SPI dažnį laikrodis ir parašykite vieną bitą, o jūs skaitote vieną bitą. apibrėžti Sojų pasta: ir Mosi: ir taip pat spi_clk: iš ir, kiekvieno clk_spi byte_in (0)
 
Bram yra tiesiog standartas Xilinx Blokuoti RAM. Pažvelkite Xilinx lape Bram gauti laiko diagramas skaitymo ir rašymo idėja. Tada rašyti RTL modulis, kuris trunka serijos SPI duomenis ir įrašo juos į Bram lygiagrečių duomenų.
 

Welcome to EDABoard.com

Sponsor

Back
Top