Ich ziehe das einfach mal aus dem dem anderen Thread Beitrag "Re: 32-Bit μC für zwei Layer PCB" raus: Jürgen S. schrieb: > Schau dir mal den LPC824 an. > > Ist noch sehr neu und schwer zu bekommen, das wird sich aber vermutlich > ändern. Nett, insbesondere die Switchmatrix mit viel Peripherie. Ist so was schwierig oder teuer herzustellen? So ein Konzept könnte die Anzahl von verschiedenen Typen deutlich reduzieren und damit die Logistik wesentlich vereinfachen.
Ein gutes Beispiel ist der ATtiny1634: Ein Haufen Peripherie, die sich gegenseitig im Weg steht. Da würde so eine Matrix helfen. Togit schrieb: > Ist so was schwierig oder teuer herzustellen? Ja, jeder 10tel Cent zählt, bei Millionen-Stückzahlen.
Ist immer noch schwierig herzustellen. Analoge und Open-Drain Pins sind immer noch fest zugeordnet. Die Anzahl der Typen reduzieren -- Dafür reicht die Matrix nicht aus. Mal brauchst du 5 Timer, beim nächsten Projekt 3 USB Ports und danach willst du ein LCD-Modul direkt anschließen. Die Matrix ist nur Voraussetzung, um alle Varianten in ein 20 Pin Gehäuse zu packen. Bleibt das Problem, ein universeller Chip braucht 5x so viel Peripherie, wie ein herkömmlicher.
Uiii Cool, die NXP muss ich mir näher anschauen, danke für den tollen Hinweis! Das dürfte das meistunterschätzte Feature eines µC sein, schließlich kann man damit viele Peripherals multiplexen. Noch ne UART nötig, aber keine frei? Kein Problem, das muxen wir drauf. 10x wenn nötig. 20x USB-Serial-Wandler mit einem µC? Kein Problem! schnell ist es nicht, aber möglich. RX<>TX oder MOSI <> SCK getauscht? 90% der Layoutfehler sind in 0 Minuten erschlagen. Außerdem: Wer schon einmal einen wirklich komplexen, zu 100% belgten 144-Pin µC "bepinnen" musste), weiß das auch zu schätzen. Warum das nicht verbreitet ist hat meiner Meinung nach zwei Gründe: 1. Die Matrix ist recht groß - Timing und Chipfläche sind ein Problem. 2. Viele Hersteller und Kunden haben noch nicht erkannt, welche Vorteile das hat, und wie mächtig das Feature wirklich ist. Bisher verwende zuhause unter anderem deswegen diverse PICs. Einige moderne (PIC24FJ128GC006, PIC32MX470) haben das auch vollständig oder wenigstens teilweise - fast alles geht an fast allen Pins, inklusive Analog. Das macht die Layouts auch mit 2 Lagen sehr schön, alle Überkreuzungen sind im µC :-)
WehOhWeh schrieb: > Bisher verwende zuhause unter anderem deswegen diverse PICs. Stimmt, die können auch viel und dann wäre da z.B. noch der Silicon Labs C8051 mit 'Flexible Pin Muxing'.
Torsten C. schrieb: > Ein gutes Beispiel ist der ATtiny1634: Ein Haufen Peripherie, die > sich > gegenseitig im Weg steht. Da würde so eine Matrix helfen. > > Togit schrieb: >> Ist so was schwierig oder teuer herzustellen? > > Ja, jeder 10tel Cent zählt, bei Millionen-Stückzahlen. Lagerhaltung, Beschaffung, etc. würden sich dagegen vereinfachen und die ganzen verschiedenen Typen in der Produktion machen den μC sicherlich nicht billiger.
WehOhWeh schrieb: > Das macht die Layouts auch mit 2 Lagen sehr schön, alle Überkreuzungen > sind im µC :-) Das sollte doch auch weitere Kosten für Platinenfläche sparen.
So gut wie jeder Pic24 und dsPic hat eine solche Matrix, mit welcher sich fast jede Peripherie auf fast jeden Pin mappen lässt
Wie wird bei dem dann die SPI verwendet? Also zum Programmieren des uC? Die Switchmatrix bietet ja freie Pinkonfiguration an. Da müsste der uC vor dem Bestücken erst einmal "grundprogrammiert" werden bei dem gesagt wird SPI ist an PinXYZ. Sonst ist das in der Schaltung nicht mehr verwendbar. Oder wie ist das zu sehen?
Dominic A. schrieb: > Ein PIC wird nicht über SPI programmiert. Er hat spezielle Pins > dafür. Sorry, ich bezog mich auf den LPC824! Im datenblatt geht alles erst einmal über die Switchmatrix (laut BSB)
Togit schrieb: > Nett, insbesondere die Switchmatrix mit viel Peripherie. Das gibt es selbst bei kleinen PICs schon lange (nur halt nicht als Matrix sondern als alternative Pinout für einige Fuktionen). Bei großen (Pic32) kommen da noch DMA und locking Mechanismen pipelining etc hinzu. Auch bei ARM gibt es das. > Ist so was schwierig oder teuer herzustellen? Das macht den Chip größer (und auch komplizierter da zusätzliche Konfiguration) und somit teurer. Warum für ein Feature zahlen ohne es zu brauchen? Thomas schrieb: > Die Switchmatrix bietet ja freie Pinkonfiguration an. Hat aber eine default configuration.
Thomas schrieb: > Sorry, ich bezog mich auf den LPC824! Im datenblatt geht alles erst > einmal über die Switchmatrix (laut BSB) Siehe User Manual "Boot ROM" "3.4 Pin Description": ISP entry pin USART RXD USART TXD PIO0_12 PIO0_0 PIO0_4 D.h. wenn beim Start P0_12 auf Low gezogen wird, kann man über P0_0 und P0_4 mit dem eingebauten Bootlader reden, um z.B. den Flash-Speicher zu programmieren.
Togit schrieb: > Ist so was schwierig oder teuer herzustellen? Der Aufwand steigt exponentiell an. Sieht man schön an den GALs, da ist beim 22V10 (22*10 Matrix) Schluß. Größere CPLDs sind dann in Blöcke unterteilt. Man kann zwar immer noch alles zu allem routen, aber der Fitter muß dann mal noch Macrozellen zwischen setzen (längere Laufzeit). Und beim MC braucht man den 3-fachen Aufwand (Input-, Output-, Direction-Bits).
Ich halte die Idee im Grunde für nen ausgemachten Schmarrn. Bei kleineren µC mit 48 Pins oder weniger sollten sich die Entwickler ihr Lehrgeld zurückgeben lassen, wenn sie sowas nicht routen können und bei größeren µC's ist sowas rein technisch auf dem Chip eher ein Alptraum. Und warum zum Kuckuck sollten sich die Chip-Entwickler auch noch sowas unter allergrößten Mühen einfallen lassen, bloß weil die nachfolgenden Entwickler zu doof oder zu faul sind zum ordentlichen Routen der LP? W.S.
W.S. schrieb: > ... zum ordentlichen Routen der LP? Es geht nicht um das routen. Eine Matrix ermöglichst die Nutzung von Funktionsblöcken die bei starrer Belegung auf dem gleichen Pin liegen.
Cypress macht es mit ihren PSoCs so. Beim PSoC5 geht das sehr komfortabel und man kann nahezu jegliche Funktion auf fast jeden Pin legen. Eine Handvoll Einschränkungen wie fest verdrahtete OPVs oder USB-Pins gibt es schon und auch der Analog-Interconnect-Bus hat eine endliche Leitungsbreite, aber die Flexibilität ist schon der reine Wahnsinn! :) So macht entwickeln auch wieder Spaß! Viele Grüße! Sven
W.S. schrieb: > Ich halte die Idee im Grunde für nen ausgemachten Schmarrn. Da gebe ich dir Recht. Ist bei z.B. bei den LPC15xx auch nicht ganz sorgenfrei. Wenn z.B. mehrerer PWM-Kanäle benötigt werden, kann man da auch nicht einfach die Switchmatrix zu Hilfe nehmen, da sich deutliche Unterschiede von direkten Ausgängen zu Ausgängen ergeben die über die Switchmatrix laufen. Wird auch im Handbuch darauf hingewiesen.
Ich glaube am flexibelsten sind diesbezüglich die Silabs uC's. Bei ST nervt mich das auch ein bisschen, dass die Peripherie sich im Wege steht und man die "Friss oder Stirb" Situation hat...
Ich stolpere gerade zum ersten Mal über den Begriff Switch Matrix in diesem Zusammenhang deshalb die evtl. etwas stupide Frage: Kann man die Pins also praktisch beliebig zuweisen oder wie ist das?
anon schrieb: > Kann man die Pins also praktisch beliebig zuweisen oder wie ist das? Man kann jene Pins und Pinfunktionen frei einander zuweisen, die zur Matrix gehören. Funktionen mit besonderer Hardwarecharakteristik sind jedoch üblicherweise nicht Teil der Matrix, wie Flanken/Glitchkontrolle (I2C), Analogkram und aufgrund des Henne/Ei-Problems Programmier- und Debugfunktion.
:
Bearbeitet durch User
W.S. schrieb: > Und warum zum Kuckuck sollten sich die Chip-Entwickler auch noch sowas > unter allergrößten Mühen einfallen lassen, bloß weil die nachfolgenden > Entwickler zu doof oder zu faul sind zum ordentlichen Routen der LP? Naja, sie sollten sich eben an der Mehrzahl ihrer Kunden orientieren. Und ich würde sagen, prozentual wird die von Dir angesprochene Gruppe in den nächsten Jahren wachsen. :-)
Harald Wilhelms schrieb: > Und ich würde sagen, prozentual wird die von Dir angesprochene Gruppe > in den nächsten Jahren wachsen. :-) YMMD! In Zukunft nur noch Lötstreifenrasterplatine, geroutet wird in den MCUs. LOL! * SCNR *
Fassen wir mal zusammen: - Geht angeblich nicht weil der Aufwand zu stark ansteigt. - Echte Kerle die das komplett überflüssig finden, das ging früher alles mit Röhren und Relais. - Diverse Hersteller haben das im Angebot. Hier wird es interessant: temp schrieb: > Da gebe ich dir Recht. Ist bei z.B. bei den LPC15xx auch nicht ganz > sorgenfrei. Wenn z.B. mehrerer PWM-Kanäle benötigt werden, kann man da > auch nicht einfach die Switchmatrix zu Hilfe nehmen, da sich deutliche > Unterschiede von direkten Ausgängen zu Ausgängen ergeben die über die > Switchmatrix laufen. Wird auch im Handbuch darauf hingewiesen. Gibt es einen Link auf das Datenblatt wo das beschrieben ist?
W.S. schrieb: > bloß weil die nachfolgenden > Entwickler zu doof oder zu faul sind zum ordentlichen Routen der LP? Bullshit! Manchmal ist einfach kein Platz mehr da um ungünstig gelegene Pins auf die andere Seite zu führen. Es muss nicht unbedingt jede Funktion an jedem Pin stehen aber es ist ungemein hilfreich wenn man für einige Sachen 2 oder 3 Alternativen hat und so zum Beispiel I²c links statt unten und das SPI auf der gegenüberliegenden Seite rausführen kann wenn sowohl oben als auch unten kein halber Millimeter mehr Platz ist weil da schon die Platine aufhört und das Gehäuse anfängt.
:
Bearbeitet durch User
Hi > bloß weil die nachfolgenden > Entwickler zu doof oder zu faul sind zum ordentlichen Routen der LP? Stimmt. Unfähige Layouter sind weit häufiger als ungünstige Chipdesigner. MfG Spess
Harald Wilhelms schrieb: > Und ich würde sagen, prozentual wird die von Dir angesprochene Gruppe > in den nächsten Jahren wachsen. Ja. Da sprichst du mir aus dem Herzen - ich habe die gleichen Befürchtungen. Insbesondere, wenn ich mich hier in diesem Forum umsehe. W.S.
Ah da bin ich aber froh, dass Leute wie W.S., spess53 und Harald Wilhelms "unsere" (darf man sich wohl als Normalsterblicher nicht dazuzählen) Zunft retten. Weiter so Jungs, ich hoffe ihr könnt euer Wissen noch weitergeben bevor ihr pensioniert seid.
A. K. schrieb: > Man kann jene Pins und Pinfunktionen frei einander zuweisen, die zur > Matrix gehören. Funktionen mit besonderer Hardwarecharakteristik sind > jedoch üblicherweise nicht Teil der Matrix, wie Flanken/Glitchkontrolle > (I2C), Analogkram und aufgrund des Henne/Ei-Problems Programmier- und > Debugfunktion. Danke für die Erklärung, dann habe ich das so richtig verstanden. Das ein paar Pins davon ausgenommen sind habe ich mir schon gedacht, die Möglichkeiten die sich dadurch ergeben sind trotzdem ganz schön vielseitig.
Togit schrieb: >> Unterschiede von direkten Ausgängen zu Ausgängen ergeben die über die >> Switchmatrix laufen. Wird auch im Handbuch darauf hingewiesen. > > Gibt es einen Link auf das Datenblatt wo das beschrieben ist? Remark: For applications that require exact timing of the SCT outputs (for example PWM), assign the outputs only to fixed-pin functions to ensure that the output skew is nearly the same for all outputs. user_manual_lpc15xx Seite 224
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.