www.wikidata.de-de.nina.az
Der Titel dieses Artikels ist mehrdeutig Eine Beschreibung weitere Architekturen Programmierbarer SoC Systeme finden sich unter System on a Chip Bei PSoC Programmable System on Chip handelt es sich um 3 verschiedene 8 Bit und 32 bit Mikrocontrollerfamilien die von der Firma Cypress Semiconductor hergestellt werden Seit 2001 sind die ersten Produkte auf dem Markt erhaltlich seit 2010 gibt es den PSoC 3 und seit 2011 den auf einem Arm Cortex M3 basierenden PSoC 5 Inzwischen sind alle 3 Familien ausgebaut worden und es gibt weit uber 100 verschiedene PSoC Bausteine Neben dem von Cypress Semiconductor entwickelten M8C Prozessorkern kommen im PSoC 3 ein Einzelzyklus 8051 und im PSoC 5 ein Arm Cortex M3 zum Einsatz Diese Kerne kommen auch in vielen Varianten bei den USB Controllern von Cypress Semiconductor zum Einsatz Einige PSoC BeispieleDie Starke der PSoC gegenuber typischen Mikrocontrollern liegt darin dass die individuell benotigten Ressourcen in der Peripherie entsprechend dem Bedarf erzeugt und angepasst werden konnen So kann die Hardware des Controllers z B einfach von einer UART auf Pulsweitenmodulation oder umgekehrt umkonfiguriert werden Dies gilt sowohl fur digitale als auch fur analoge Funktionen Ausserdem konnen die Ein Ausgange der Peripherals nahezu beliebig den Pins zugeordnet werden Diese Flexibilitat ermoglicht es Platinen zu fertigen ohne die endgultigen Spezifikationen zu haben Inhaltsverzeichnis 1 Grundsatzliches 2 Microcontroller Familien 3 Speicheraufteilung 4 Peripherie in den Blocken 5 CapSense 6 Programmentwicklung 7 Literatur 8 Weblinks 9 EinzelnachweiseGrundsatzliches BearbeitenDie zwei Hauptbestandteile eines PSoC bestehen zunachst aus einem Standard Mikrocontroller mit dem Rechenwerk Flash Speicher RAM verschiedenen onChip RC Oszillatoren mit PLL Watchdog Spannungsreferenz I O Ports und einigem mehr sowie bei neueren Modellen auch mit integrierten Peripherien wie I C oder USB Des Weiteren befinden sich auf den PSoC sogenannte digitale und analoge Blocke welche individuell vom Entwickler mit Peripheriefunktionen belegt werden konnen Die PSoC werden mit Flash Speicher von 2 bis 256 KByte RAM Speicher von 128 Byte bis 32 KByte sowie in Chip Gehausen von 8 Pins bis 100 Pins angeboten Microcontroller Familien BearbeitenCypress hat bis heute funf Familien des PSoC Microcontrollers entwickelt PSoC 1 CY8C2xxxx series M8C core PSoC 3 CY8C3xxxx series 8051 core PSoC 4 CY8C4xxxx series Arm Cortex M0 core 1 PSoC 5 5LP CY8C5xxxx series Arm Cortex M3 core PSoC 6 CY8C6xxxx series ARM Cortex M4 core mit ARM Cortex M0 core in einigen Modellen 2 Die verschiedenen Familien sind dabei CY8C25xxx CY8C26xxx die erste Generation der PSoC mit 4 bis 16 KByte Flash Speicher 256 Byte RAM 8 digitale und 12 analoge Blocke Gehausegrossen von 8 bis 44 Pins Diese Familie sollte fur neue Entwicklungen nicht mehr verwendet werden Nachfolger sind die Produkte der Familie CY8C27x43 CY8C27x43 die zweite Generation der PSoC mit 16 KByte Flash Speicher 256 Byte RAM 8 digitale und 12 analoge Blocke Gehausegrossen von 8 bis 44 Pins CY8C29x43 mit 32 KByte Flash Speicher 2 KByte RAM 16 digitale und 12 analoge Blocke Gehausegrossen von 28 bis 100 Pins CY8C28xxx mit 16 KByte Flash Speicher 1 KByte RAM sehr unterschiedlich in der Peripherieausgestaltung bis max 12 digitale und 12 analoge Blocke teilweise mit 10 Bit ADC CapSense siehe nachstehend Gehausegrossen von 28 bis 48 Pins CY8C24x23 mit 4 KByte Flash Speicher 256 Byte RAM 4 digitale und 6 analoge Blocke Gehausegrossen von 8 bis 28 Pins CY8C22x13 mit 2 KByte Flash Speicher 256 Byte RAM 4 digitale und 3 analoge Blocke Gehausegrossen von 8 bis 20 Pins Diese Familie sollte fur neue Entwicklungen nicht mehr verwendet werden Alternativen sind die Produkte der Familie CY8C24x23 CY8C21x34 mit 8 KByte Flash Speicher 512 Byte RAM 4 digitale und 4 modifizierte analoge Blocke mit diesen Controllern ist CapSense moglich s u Gehausegrossen von 20 bis 32 Pins CY8C21x23 mit 4 KByte Flash Speicher 256 Byte RAM 4 digitale und 4 modifizierte analoge Blocke Gehausegrossen von 8 bis 24 Pins CY8C20x34 mit 8 KByte Flash Speicher 512 Byte RAM I C SPI aber keine Blocke mit diesen Controllern ist CapSense moglich s u Gehausegrossen von 16 bis 32 Pins CY8C20xx6 auch CapSense Express mit vorinstallierter CapSense und Kommunikations Firmware 2 KByte RAM I C SPI aber keine Blocke mit diesen Controllern ist CapSense moglich s u Gehausegrossen von 16 bis 48 Pins CY8C24x94 mit 16 KByte Flash Speicher 1 KByte RAM USB 4 digitale und 6 analoge Blocke mit diesen Controllern ist CapSense moglich s u Gehausegrossen von 56 bis 100 Pins CY8CTMA1xx CY8CTMG1xx CY8CTST1xx auch PSoC TrueTouch mit besonderen Funktionen wie 2 Punkt Gesten Erkennung oder Multi Touch All Point bis zu 10 Fingern mit 8 bis 16 KByte Flash Speicher 512c bis 1024 Byte RAM Gehausegrossen von 32 bis 100 Pins CY8CLED0xx0x auch PowerPSoC mit besonderen Power Funktionen bis maximal 4 mal 0 5 oder 1 Ampere MOSFET oder nur mit externen Gate Treibern mit 16 KByte Flash Speicher 1 KByte RAM Gehausegrosse 56 Pins CY8CNP1xxB auch PSoCnv ist ein CY8C29xxx mit 100 Pins jedoch ist zusatzlich ein nichtfluchtiger Speicher von 64 bis 256 KByte enthalten eine Kombination aus RAM mit Schatten EEPROM CYWUSB6953 ist ein CY8C27643 mit 48 Pins jedoch ist zusatzlich ein auch von Cypress Semiconductor diskret lieferbarer Wireless USB Chip im Gehause mit integriert Speicheraufteilung BearbeitenDie Speicheraufteilung ist nach der Harvard Architektur ausgefuhrt d h Programm und Datenspeicher werden uber getrennte Busse angesprochen Der Zugriff auf den Datenspeicher das RAM ist bei den PSoC 1 nur bis 256 Byte RAM direkt moglich Zugriffe auf hohere Speicheradressen mussen uber Banking erfolgen PSoC 3 bietet zwischen 2 8 KB RAM 16 64 KB Flash und PSoC 5 zwischen 16 64 KB RAM 64 256 KB Flash Peripherie in den Blocken Bearbeiten nbsp PSoC Blockschaltbild mit animierter BlockstrukturDie Blocke in den PSoC sind kleine in sich getrennte Arrays Diese Arrays werden bei der Programmentwicklung vorkonfiguriert konnen aber auch wahrend des Betriebs andere Funktionen bekommen dies ist leicht durch Andern einiger Register vom Programm zu erledigen Neben der Hauptunterscheidung Analog und Digital gibt es weitere kleine Unterscheidungsmerkmale Digitale Blocke diese sind als 8 Bit Funktionseinheit mit Register konzipiert So kann ein solcher Block einen Timer oder Counter von 8 Bit aufnehmen Benotigt man einen 16 oder 32 Bit Timer muss man mehrere Blocke zusammenschalten Weitere Funktionen die man in die digitalen Blocke einfugen kann sind UART SPI PWM mit oder ohne Totzeit CRC Generator Zufallszahlengenerator und viele mehr Zu beachten ist dabei dass die Kommunikationsfunktionen UART SPI nur in der Halfte der zur Verfugung stehenden Blocke abgelegt werden kann da der anderen Halfte eine Kommunikationsleitung fehlt Analoge Blocke Hier wird zwischen sogenannten Switch Capacitor und Continuous Time unterschieden um unterschiedliche analoge Funktionen in ihnen abbilden zu konnen Die CY8C21xxx Familien haben jedoch nur eine reduzierte Funktionalitat In den analogen Blocken lassen sich z B AD Wandler nach SAR inkremental oder Delta Sigma Verfahren DA Wandler Operationsverstarker Komparator Filterfunktionen und einiges mehr abbilden Bei den CY8C20x34 hat man auf die Blocke ganz verzichtet hier ist nur noch die Moglichkeit der seriellen Kommunikation mittels I C oder SPI in Hardware und die Anbindung von CapSense moglich CapSense Bearbeiten nbsp CY3212 CapSense DemoboardDies ist eine spezielle neue Funktion bei mehreren Familien der PSoC Unterstutzt wird CapSense bei den Standard Micros CY8C21x34 den speziell dafur ausgelegten CY8C20x34 und bei den Micros mit USB den CY8C24x94 Mit CapSense kann man auf einfache Weise Tasten eindimensionale Schieberegler Slider oder zweidimensionale Eingabefelder Touchpad realisieren dabei bestehen die Eingabeelemente aus reinen Leiterbahnflachen auf einer Platine wobei keine weiteren Hardwareelemente wie Kondensatoren oder ahnliches benotigt werden Der Entwickler wird hierbei durch einen Wizard im PSoC Designer unterstutzt Auf der Platine kann dann je nach Ausfuhrung auch noch eine Folie oder Glas angebracht werden um den Anwender der Schaltung bzw des Gerates nicht mit der Platine direkt in Beruhrung zu bringen Programmentwicklung Bearbeiten nbsp ICE Cube EmulatorUm den Mikrocontroller in einer Anwendung einsetzen zu konnen muss zuerst vom Entwickler ein Programm entwickelt werden Die Programmentwicklung kann mittels Assembler oder einer Hochsprache z B C geschehen Bei den PSoC kommt in der Industrie heute zumeist C zum Einsatz da der Programmcode spater damit besser zu pflegen ist Cypress stellt fur die Entwicklung die kostenlose Software PSoC Designer auf ihrer Homepage zur Verfugung der Designer beinhaltet eine grafische Oberflache zum Einbinden und Konfigurieren von den gewunschten Peripherie Modulen den Assembler und einen C Compiler Mit dem ebenfalls von Cypress kostenlos erhaltlichen PSoC Express ist die Programmentwicklung auch komplett auf grafischer Ebene moglich dies eignet sich besonders fur die Abschatzung auf Machbarkeit sogenannte Machbarkeitsstudien oder auch fur Neueinsteiger in der Elektronikentwicklung die keine oder nur wenig Erfahrung mit Programmiersprachen haben Programmierung in CVon Cypress ist ein kostenloser in den PSoC Designer integrierter C Compiler erhaltlich welcher von Image Craft lizenziert wurde Fehlersuche EmulatorZum Debuggen kann man auf den Emulator von Cypress den ICE Cube zuruckgreifen Mit dem ICE Cube kann man auch die Chips programmieren ProgrammierungDieser Vorgang wird auch als Brennen bezeichnet Dies bedeutet dass Informationen z B ein kompiliertes Programm auch Firmware genannt auf dem internen Flash Speicher des Bausteins gespeichert werden Hierzu bieten die PSoC Mikrocontroller eine serielle Programmier Schnittstelle die auch noch zur Ubertragung des Maschinencode benutzt werden kann wenn der Chip bereits in die Schaltung eingebaut wurde Dieser Vorgang kann dann mit einem Programmiergerat durchgefuhrt werden Besonders gunstige Programmiertools gibt es von Cypress unter der Bezeichnung CY3210 MiniEval1 oder CY3210 PSoCEval1 PSoC Creator for PSoC 3 und PSoC 5Die kostenlose Software zur Programmierung con PSoC 3 und PSoC 5 bietet deutlich mehr Komfort weil sie z B automatisches Routing macht und das ist bei der hoheren Komplexitat der Chips sehr notwendig Zum Debugging ist der GNU Dugger GDB in PSoC Creator integriert Als Compiler kommen Keil fur PSoC 3 und GNU fur PSoC 5 zum Einsatz nbsp FlexPod zum ICE Cube nbsp CY3210 MiniEval1 nbsp Cypress Miniprogrammer ohne Gehause nbsp CY3210 PSoCEval1 Lieferung ohne TouchpadLiteratur BearbeitenFredi Kruger PSoC Mikrocontroller Franzis Verlag ISBN 978 3 7723 5399 4 Fredi Kruger Messen Steuern und Regeln mit PSoC Mikrocontroller Franzis Verlag ISBN 978 3 7723 5437 3Weblinks BearbeitenWikibooks PSoC Projekt englisch Cypress Homepage Cypress PSoC Homepage www psocdeveloper com Forum sowie Neuigkeiten FAQ Software und anderes rund um PSoC englisch Einzelnachweise Bearbeiten https www electronicdesign com technologies microcontrollers article 21796262 custom peripherals surround cortexm0 platform https www digikey de en product highlight c cypress psoc 6 cy8ckit 062 pioneer kitProgrammierbare LogikKonzepte ASIC SoC FPGA CLB CPLD EPLD PLA PAL GAL PSoC Reconfigurable Computing Xputer Soft microprocessor Circuit underutilization High level synthesis HardwarebeschleunigungProgrammiertechnik Masken programmiert Antifuse EPROM E PROM Flash SRAMProgrammiersprachen Verilog A AMS VHDL AMS VITAL SystemVerilog DPI SystemC AHDL Handel C PSL UPF PALASM ABEL CUPL OpenVera C to HDL Flow to HDL MyHDL JHDL ELLAHersteller Accellera Actel Achronix AMD Aldec Atmel Cadence Cypress Duolog Forte Intel Altera Lattice National Mentor Graphics Microsemi Signetics Synopsys Magma Virage Logic Texas Instruments Tabula XilinxProdukte Hardware iCE Stratix Cyclone Arria Max Kintex Zynq VirtexSoftware Intel Quartus Prime Xilinx ISE Xilinx Vivado ModelSim VTRIP Proprietar ARC ARM Cortex M PowerPC LEON LatticeMico8 MicroBlaze PicoBlaze Nios Nios IIOpen Source JOP LatticeMico32 OpenCores OpenRISC RISC V Zet Abgerufen von https de wikipedia org w index php title PSoC amp oldid 238472345