<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Complex_Programmable_Logic_Device</id>
	<title>Complex Programmable Logic Device - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Complex_Programmable_Logic_Device"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Complex_Programmable_Logic_Device&amp;action=history"/>
	<updated>2026-05-17T21:07:11Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Wikipedia (Deutsch) – Lokale Kopie</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki-de.moshellshocker.dns64.de/index.php?title=Complex_Programmable_Logic_Device&amp;diff=91423&amp;oldid=prev</id>
		<title>imported&gt;PaulAsimov: /* Weblinks */ OpenFPGA</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Complex_Programmable_Logic_Device&amp;diff=91423&amp;oldid=prev"/>
		<updated>2024-01-22T12:01:57Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Weblinks: &lt;/span&gt; OpenFPGA&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Belege fehlen}}&lt;br /&gt;
[[Datei:Altera MAX 7128 2500 gate CPLD.jpg|mini|Ein [[Altera]] MAX 7000-series CPLD mit 2500 Gattern.]]&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Complex Programmable Logic Devices&amp;#039;&amp;#039;&amp;#039; (&amp;#039;&amp;#039;&amp;#039;CPLD&amp;#039;&amp;#039;&amp;#039;) stellen in der [[Digitaltechnik]] sogenannte [[Programmierbare logische Anordnung|programmierbare logische Schaltungen]] dar. Sie sind technologischer Nachfolger der [[Programmable Array Logic]] (PAL) und im Aufbau einfacher als die deutlich komplexeren [[Field Programmable Gate Array]]s (FPGAs).&lt;br /&gt;
&lt;br /&gt;
== Aufbau ==&lt;br /&gt;
[[Datei:Altera-CPGA EPM240G.jpg|mini|Zwei CPLDs in [[MBGA]]-Bauweise auf einem [[Universal Serial Bus|USB-Stecker]]]]&lt;br /&gt;
CPLDs bestehen im Wesentlichen aus folgenden Elementen:&lt;br /&gt;
* programmierbare [[Konjunktion (Logik)|AND]]/[[Disjunktion|OR]]-[[Koppelfeld|Matrix]]&lt;br /&gt;
* programmierbare [[Rückkopplung#Elektrische Schaltungstechnik|Rückkopplung]]&lt;br /&gt;
* Eingabeblock&lt;br /&gt;
* Ausgabeblock&lt;br /&gt;
&lt;br /&gt;
Ein-/Ausgabeblöcke können schnelle [[Speicher]], wie [[Latch]]es, D-[[Flipflop]]s oder [[Register (Computer)|Register]], sein. In vielen modernen [[Programmierbare logische Schaltung|PLDs]] stehen programmierbare Ausgänge zur Verfügung, denen man definierte Zustände (&amp;#039;&amp;#039;active low, active high, tristate&amp;#039;&amp;#039;) zuweisen kann. Der AND/OR-Matrix als Kern kann jede beliebige kombinatorische Verknüpfung zugewiesen werden.&lt;br /&gt;
&lt;br /&gt;
Ein CPLD setzt sich aus vielen SPLDs (simple programmable logic device) zusammen. Diese werden Makrozellen genannt. Die einzelnen SPLDs werden wiederum über Busse miteinander verbunden. Der homogene Aufbau ermöglicht eine exakte Bestimmung der Durchlaufzeiten, was den wesentlichen Unterschied zu den [[FPGA]]s ausmacht. Ein weiterer, allerdings nicht grundlegend notwendiger Unterschied ist die Konfiguration: Durch Fertigung in EECMOS &amp;#039;&amp;#039;electronically erasable complementary metal oxide semiconductor&amp;#039;&amp;#039; bleibt nach der Konfiguration das Programm im CPLD und muss nicht bei jedem Start neu geladen werden. Dieses Kriterium der Konfiguration ist kein wesentliches Unterscheidungsmerkmal zwischen CPLDs und FPGAs, allerdings ist es derzeit technologisch noch nicht möglich, die wesentlich komplexeren FPGA-Strukturen gemeinsam mit [[EEPROM]]-Zellen wie bei einem CPLD auf einem Chip unterzubringen. Am Markt befindliche rekonfigurierbare FPGA-Bausteine ohne externen Speicher sind derzeit (Mitte 2007) so genannte &amp;#039;&amp;#039;Multi-Die&amp;#039;&amp;#039;-Lösungen. Dabei werden mehrere, technologisch unterschiedlich hergestellte Halbleiterchips wie ein herkömmlicher SRAM-basierender FPGA-Chip und ein Flash-Konfigurationschip gemeinsam in einem Chipgehäuse untergebracht. Nach außen hin wird dann für das FPGA kein externer Speicher mehr benötigt.&lt;br /&gt;
&lt;br /&gt;
Durch die hohe Anzahl von Eingängen pro Logikblock bieten sich CPLDs vor allem für die Lösung komplexer, paralleler kombinatorischer AND/OR-Logik an, bei denen viele Ein- bzw. Ausgänge benötigt werden. Gleichzeitig sollte die Anzahl der notwendigen Speicher ([[Flipflop]]s) bei der Anwendung von CPLDs gering sein, da pro Ein- bzw. Ausgabepins meist nur ein einziges Flipflop als Register zur Verfügung steht. Digitale Schaltungen, welche viele Register erfordern, wie beispielsweise [[Schieberegister]] oder digitale [[Synchronzähler|Zähler]], lassen sich daher nur bis zu einem gewissen Grad in CPLDs effizient realisieren.&lt;br /&gt;
&lt;br /&gt;
Bei steigender Zahl der Zellen werden die Makrozellen mit lokalen Leitungen zu übergeordneten Strukturen wie &amp;#039;&amp;#039;Logic Array Blocks&amp;#039;&amp;#039;, LABs zusammengefasst. Diese Bezeichnungen variieren allerdings je nach Hersteller.&lt;br /&gt;
&lt;br /&gt;
Hersteller sind beispielsweise [[Xilinx]], [[Altera]], [[Lattice Semiconductor Corporation|Lattice]], [[Actel]], [[Lucent]], [[Cypress Semiconductor Corporation|Cypress]], [[Atmel]] oder [[Quicklogic]].&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
{{commonscat|Complex programmable logic devices}}&lt;br /&gt;
* [https://www.mikrocontroller.net/articles/CPLD CPLD-Grundlagen] bei mikrocontroller.net&lt;br /&gt;
* [https://github.com/azonenberg/openfpga OpenFPGA], Open-Source-FGPA- und CPLD-[[Toolchain]] ([[GitHub]]-[[Repository]])&lt;br /&gt;
&lt;br /&gt;
{{Navigationsleiste programmierbare Logik}}&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Programmierbare Logik]]&lt;br /&gt;
&lt;br /&gt;
[[fr:Circuit logique programmable#CPLD]]&lt;/div&gt;</summary>
		<author><name>imported&gt;PaulAsimov</name></author>
	</entry>
</feed>