Forum: Mikrocontroller und Digitale Elektronik Cypress PSoC: Was passt in einen digitalen Block?


von Ralf (Gast)


Lesenswert?

Hallo,

ich überlege mir gerade, mir ein Devkit zu PSoC 3/4/5 zuzulegen, ich 
möchte die MCUs einfach mal ausprobieren.

Da mir gänzlich die Erfahrung mit FPGA etc. fehlt, frage ich mich, was 
denn nun in einen digitalen Block passt. Glaubt man den Datenblättern, 
so scheint es zumindest möglich zu sein komplette UARTs oder SPIs 
reinzubringen.

Ich hab noch nicht rausgefunden, ob diese Blöcke bei allen PSoC-Serien 
identisch sind oder ob beispielsweise in einen Block eines PSoC5 mehr 
reinpasst als in einen Block vom PSoC3?

Ralf

von Ralf (Gast)


Lesenswert?

Push :)

von Alexander S. (alex_sofa)


Lesenswert?

Ein SoC ist kein FPGA. Es handelt sich um einen 
Mikrocontroller/-prozessor mit externer Peripherie.

Vielleicht bist du ja eher auf der Suche nach Programmable Logic, der 
Mischung aus FPGA und uC.

von NaNa_JaJa (Gast)


Lesenswert?


von Ralf (Gast)


Lesenswert?

@Alexander:
> Ein SoC ist kein FPGA. Es handelt sich um einen
> Mikrocontroller/-prozessor mit externer Peripherie.
Das ist mir klar, aber so wie ich die Cypress PSoC Architektur 
verstanden habe sind die digitalen Blöcke durchaus mit einem FPGA 
vergleichbar.

> Vielleicht bist du ja eher auf der Suche nach Programmable Logic, der
> Mischung aus FPGA und uC.
Wenn die PSoCs tatsächlich etwas völlig anderes sind, dann sollte ich 
mir das auch ansehen :)
Mir geht's halt darum dann auch die Möglichkeit zu haben, das auf 
eigenen Boards einsetzen zu können. Das geht bei den 'normalen' 
FPGA+MCU-Kombis nicht oder nur sehr schwer, da diese ICs dann auch in 
riesigen Gehäusen daherkommen, welche nur schwer oder gar nicht im 
Hobbybereich lötbar sind. Und für kleine Schaltungen will ich nun nicht 
unbedingt einen TQFP100 oder größer draufpappen. Da sind die 
Gehäusevarianten der PSoCs schon attraktiver.

@ NaNa_JaJa:
Danke, schau ich mir gleich mal an.

Ralf

von Holger (Gast)


Lesenswert?

Hallo Ralf,
hab mir das PSoc5LP-Kit angeschaut. Ein AVR oder ein PIC haben doch 
ausser der CPU noch Timer, Counter, PWM usw. die man bestimmungsgemäß 
verwenden kann. Bei Cypress ist genau dieser Teil nicht nur 
bestimmungsgemäß konfigurierbar sondern in weiten Bereichen "frei 
verdrahtbar"(sorry), und zwar über ein grafisches Tool.

Wenn Deine Applikation also eine spezielle Funktion braucht die parallel 
zur CPU 100% vorhersagbar (keine Interrupts usw.) funktionieren muss und 
so komplex ist das Standard Timer, Counter ... damit überfordert sind, 
dann ist das PSoc eventuell was für Dich. State Machines gehen über 
LUT's, freie Programmierung (verilog?) soll auch gehen, hab ich aber 
nicht probiert.

"was da reinpasst" ... kann ich leider nicht beantworten, so weit hab 
ich nicht getestet da für meine App vorher Schluß war: Der Logic Teil 
funktioniert erst nachdem der Prozessor auch oben ist und alle IO's 
konfiguriert sind, das war bei mir zu lang.

@Alexander: hättest Du ein Beispiel für einen programmable logic?

Holger

von W.S. (Gast)


Lesenswert?

Ralf schrieb:
> ich überlege mir gerade, mir ein Devkit zu PSoC 3/4/5 zuzulegen, ich
> möchte die MCUs einfach mal ausprobieren.

Ja, mach mal und schreib dann deine Erfahrungen.

Ich hatte vor geraumer Zeit die allererste PSOC-Generation mal 
ausprobiert, aber deren angebliche freie CPLD-Zellen waren dann doch so 
gestaltet, daß man außer den vom Hersteller vorgefertigten Blöcken dort 
nix wirklich eigenes hinein bekommen hat. Könnte ja sein, daß sich da 
was richtig gebessert hat..

W.S.

von Ralf (Gast)


Lesenswert?

@Holger:
> hab mir das PSoc5LP-Kit angeschaut. Ein AVR oder ein PIC haben doch
> ausser der CPU noch Timer, Counter, PWM usw. die man bestimmungsgemäß
> verwenden kann. Bei Cypress ist genau dieser Teil nicht nur
> bestimmungsgemäß konfigurierbar sondern in weiten Bereichen "frei
> verdrahtbar"(sorry), und zwar über ein grafisches Tool.
Ja, das sind dann halt die fertigen Blöcke. Ich schätze für was eigenes 
muss man dann doch VHDL/Verilog bemühen. Aber eigentlich könnt ich mir 
die Software mal runterladen und schauen, wie das alles so abläuft.

> Wenn Deine Applikation also eine spezielle Funktion braucht die parallel
> zur CPU 100% vorhersagbar (keine Interrupts usw.) funktionieren muss und
> so komplex ist das Standard Timer, Counter ... damit überfordert sind,
> dann ist das PSoc eventuell was für Dich. State Machines gehen über
> LUT's, freie Programmierung (verilog?) soll auch gehen, hab ich aber
> nicht probiert.
Ja, es gibt da ein, zwei Timing-kritische Sachen die ich ungern der MCU 
per Software aufbürden möchte, deswegen interessieren mich die Teilchen 
auch :)

> "was da reinpasst" ... kann ich leider nicht beantworten, so weit hab
> ich nicht getestet da für meine App vorher Schluß war: Der Logic Teil
> funktioniert erst nachdem der Prozessor auch oben ist und alle IO's
> konfiguriert sind, das war bei mir zu lang.
Guter Hinweis, danke. Das heisst, die MCU muss generell die 
Konfiguration erstmal in die digitalen Blöcke laden?

@W.S.:
>> ich überlege mir gerade, mir ein Devkit zu PSoC 3/4/5 zuzulegen, ich
>> möchte die MCUs einfach mal ausprobieren.
> Ja, mach mal und schreib dann deine Erfahrungen.
Sowie ich günstig an ein entsprechendes Kit komme :)

> Ich hatte vor geraumer Zeit die allererste PSOC-Generation mal
> ausprobiert, aber deren angebliche freie CPLD-Zellen waren dann doch so
> gestaltet, daß man außer den vom Hersteller vorgefertigten Blöcken dort
> nix wirklich eigenes hinein bekommen hat. Könnte ja sein, daß sich da
> was richtig gebessert hat..
Ich schätze die Jungs werden schon was dabei gelernt haben. Die PSoC1 
möchte ich nicht probieren, eher PSoC3+, da ich den 8051-Kern sehr genau 
kenne und bei den Cortex-M0/3 das Verständnis jeden Tag wächst ;)

Ralf

von Holger (Gast)


Lesenswert?

Ralf schrieb:

> Guter Hinweis, danke. Das heisst, die MCU muss generell die
> Konfiguration erstmal in die digitalen Blöcke laden?

Das hab ich blöd formuliert, sorry. Wenn Du "programmierbare Logik" 
verwendest könntest Du erwarten das das Verhalten beim power-up ist wie 
bei einem 74xxxx, Betriebsspannung Innerhalb -> Funktion, ESD Störung 
weg -> Funktion. Beim PSoc5 werden die Logik Funktionen aus dem Flash 
beim boot in den SRAM Zellen abgebildet, wenn Du da ein UND mit drei 
Pins konfigurierst geht das nach dem power-up sofort, der Prozessor muss 
NICHTS zur Laufzeit tun. Macht Dein Prozessor aber einen Kaltstart (z.B. 
ESD) dann geht das UND auch erst wieder nachdem alles wieder im SRAM 
konfiguriert ist. Ob das akzeptiert wird ist eine Systementscheidung.
Holger

von Ralf (Gast)


Lesenswert?

@Holger:
>> Guter Hinweis, danke. Das heisst, die MCU muss generell die
>> Konfiguration erstmal in die digitalen Blöcke laden?
> Das hab ich blöd formuliert, sorry. Wenn Du "programmierbare Logik"
> verwendest könntest Du erwarten das das Verhalten beim power-up ist wie
> bei einem 74xxxx, Betriebsspannung Innerhalb -> Funktion, ESD Störung
> weg -> Funktion. Beim PSoc5 werden die Logik Funktionen aus dem Flash
> beim boot in den SRAM Zellen abgebildet, wenn Du da ein UND mit drei
> Pins konfigurierst geht das nach dem power-up sofort, der Prozessor muss
> NICHTS zur Laufzeit tun. Macht Dein Prozessor aber einen Kaltstart (z.B.
> ESD) dann geht das UND auch erst wieder nachdem alles wieder im SRAM
> konfiguriert ist. Ob das akzeptiert wird ist eine Systementscheidung.
Ah, okay. Hmmm... für das was so als erstes Projektchen vorhab dürfte 
dieses Verhalten keine Rolle spielen. Wichtig ist aber, sich das immer 
im Hinterkopf zu behalten :)

@Alle:
Hat zufällig jemand ein PSoC3/4/5 Kit rumfahren, welches er nicht mehr 
braucht?

Ralf

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.