18.06.2008, autor: Ing. Robert Krejčí, kategorie: Součástky

Actel ProASIC3

FPGA s pamětí Flash
Actel ProASIC3

FPGA (Field Programmable Gate Array) je zajímavá moderní elektronická součástka. Dala by se přirovnat k nepájivému kontaktnímu poli s mnoha drátky a propojkami, a to vše je na jednom čipu. Dnes se podíváme na jeden takový obvod od firmy Actel.

  1. Úvod
  2. Actel ProASIC3
  3. Zdroje informací

1. Úvod

ProASIC3

Rozdělení programovatelných obvodů

  • 1.1. Klasické PLD
  • 1.2. Komplexní PLD
  • 1.3. FPGA

1.1. Klasické PLD

(Programmable Logical Device)
PAL, GAL a PALCE; PLA

Typická struktura PLD
Typická struktura PLD
Součinové hradlo PLD
Součinové hradlo PLD

1.2. Komplexní PLD (CPLD)

Typická struktura CPLD
Typická struktura CPLD

1.3. FPGA - Field Programmable Gate Array

Typická struktura FPGA:

Typická struktura FPGA

IOB = Input/Output Block
LB = Logic Block

Typická struktura LB:

Typická struktura logického bloku FPGA

FieldArray znamenají v češtině pole. Jak se to tedy dá přeložit?

Traktor na poli

„Na poli“ programovatelné hradlové pole
„Pole“ běžného světa versus extrémně sterilní prostředí při výrobě křemíku.

2. Actel ProASIC3

USBScope50

Zajímavá zpráva:

FPGA ProASIC3 od Actelu byla vybrána pro miniaturní zařízení pro testování a měření založené na USB komunikaci.

Zařízení s pamětí Flash vyhověla požadavkům společnosti Elan Digital Systems na cenu, velikost, bezpečnost, výkon a provedení.
(24.4.2006)

„Bezpečnostní hledisko tohoto FPGA bylo z velké části rozhodující, abychom naše zařízení USBScope50 (podrobný popis) mohli dodat na trh,“ říká ředitel společnosti Elan.

Co to je ProASIC3?

ASIC (Application Specific Integrated Circuit) Označení integrovaného obvodu (nebo obvodů), který je vytvářen jako jednoúčelový na zakázku, obvykle v menších množstvích. Kvůli úspoře návrhu a výrobního procesu se obvykle vychází z rozsáhlejšímo modelu čipu, který je jednoduše upraven nebo omezen tak, aby plnil zákaznický účel.

ASIC = zákaznický obvod

ProASIC = 1. generace nízkopříkonový, nonvolatilní, reprogramovatelný

ProASICPLUS = 2. generace FlashLock, Live at Power Up

ProASIC3/E = 3. generace obvodu vylepšeno zabezpečení, možnost implementace jádra ARM7, nízká cena

Základní charakteristika

Actel ProASIC3
  • První FPGA s uživatelsky využitelnou pamětí Flash přímo na čipu: 1 kbit.

  • 30 k – 3 M hradel.

  • 71 – 616 vstupně – výstupních vývodů podle typu pouzdra.

  • Až 504 kbit dual-port RAM (paměť se současným dvojím přístupem).

  • Až 6 jednotek PLL: pro časování různých částí obvodu.

  • Možnost implementace jádra ARM7

  • Zabezpečení proti zcizení intelektuálního vlastnictví (softwaru) pomocí 128-bitového kódovacího algoritmu.

Nízká cena a dostupnost

  • Údajně nejlevnější FPGA na světě.

  • Od $1.50 za kus při odběru 250 000 ks.

  • 7 typů součástek lze koupit za méně než $10 za kus při odběru 250 000 ks.

  • Na našem trhu není běžně k sehnání.

  • Přesné ceny nelze najít na stránkách výrobce ani distributorů. Hodně záleží na odebíraném množství.

Vysoký výkon

  • Taktovací frekvence: až 350 MHz

  • Využití až 95% logiky

  • Možnost komunikace po 64-bit PCI sběrnici při 66 MHz a 3,3 V.

Napěťové úrovně

  • Jádro je napájeno 1,5 V.

  • Přepínatelné úrovně pro vstupně-výstupní logiku: 1,5 V, 1,8 V, 2,5 V, 3,3 V.

  • Až 8 vstupně-výstupních sekcí; každá sekce může pracovat na jiných napěťových úrovních.

Jeden čip

Nepotřebuje další obvody pro nahrání konfigurace při zapnutí.

  • vyšší spolehlivost systému

  • menší spotřeba místa na desce

  • nižší celkové náklady

  • vyšší bezpečnost intelektuálního vlastnictví

„Live-At-Power-Up“

  • Inicializace součástky probíhá v několika fázích už při náběhu napájecího napětí.

Live-At-Power-Up

Odolnost vůči neutronům

  • Z atmosféry se může do zařízení dostat neutron s vysokou energií. To obvykle u (jiných) zařízení s programem v paměti SRAM vede ke zhroucení systému.

  • Výrobce zaručuje, že díky programové paměti Flash toto nebezpečí nehrozí. :-)

Bezpečné programování na desce (Secure ISP)

  • Zabudovaný kryptovací algoritmus AES a šifrovací klíč AES-128 (běžně využívaný v průmyslu), uložený v paměti Flash.

  • Umožňuje bezpečné aktualizace systému pomocí veřejných sítí, např. internet.

Možnosti bezpečného uzamknutí programové paměti

Možnosti bezpečného uzamknutí programové paměti
  • Pomocí klíče, který má 79 až 263 bitů. Stejným klíčem lze paměť odemknout.

  • Permanentní uzamknutí programové paměti.

  • FlashLock (viz Opt. 1): pomocí 128-bitového klíče, který je uložen v paměti Flash.

  • Doplňkový 128-bitový AES dekryptovací klíč (viz Opt. 2): součástka je předprogramována dekryptovacím klíčem. Při finální výrobě je výrobní firmě dodán kryptovaný kód, kterým součástku naprogramuje. Během programování je kód dekryptován.

  • Vzdálené přeprogramování pomocí internetu („field upgrade“): opět pomocí kryptovacího klíče. Případné zachycení dat během programování nelze zneužít bez znalosti klíče.

Zabezpečená výroba zařízení

Flashlock
  • Díky kryptovacím algoritmům lze bezpečně celé zařízení předat do výroby třetím stranám bez nebezpečí zcizení intelektuálního vlastnctví nebo úmyslného naprogramování jiným kódem.

  • Program nemůže být vyčten z paměti, ale může být po naprogramování bezpečně verifikován.

Označování typových řad

  • A3Pxxx – ProAsic3 s „nízkou“ hustotou hradel
    xxx = počet systémových hradel v tisících:
    030, 060, 125, 250, 400, 600, 1000

  • A3PExxx – ProAsic3 s „vysokou“ hustotou hradel
    xxx = počet systémových hradel v tisících:
    600, 1500, 3000

  • M7A3P... – podpora jádra ARM7

  • Řady A3P a A3PE se částečně vzájemně překrývají. Hlavní rozdíly mezi oběma řadami:

A3P A3PE
počet jednotek PLL 0 - 1 6
I/O banky (+JTAG) 2 nebo 4 8
pouzdra 100 – 484 vývodů 208 – 896 vývodů

Vstupy / výstupy

  • 700 Mbps DDR

  • 1.5 V, 1.8 V, 2.5 V a 3.3 V logika

  • Jednoduché (Single-Ended) I/O Standardy: např. LVTTL, LVCMOS, PCI, PCI-X

  • Differenciální I/O Standardy: např. LVPECL, LVDS, BLVDS, M-LVDS

  • Programovatelná rychlost přeběhu na výstupu a proudová zatížitelnost

  • Programovatelné piny pro referenční napětí

  • Slabé Pull-Up/Down

  • Rozhraní JTAG (IEEE1149.1 Boundary Scan Test)

  • Pinově kompatibilní v rámci celé rodiny ProASIC3

Časování

  • 6 časovacích bloků s PLL

  • Proměnný fázový posun, násobení/dělení frekvence, programovatelné zpoždění

  • Široký rozsah pracovních frekvencí: 1,5 MHz až 350 MHz

Struktura pamětí

  • Volitelná struktura paměťových bloků: ×1, ×2, ×4, ×9, ×18

  • „True Dual-Port“ SRAM

  • 24 konfiguračních možností SRAM a FIFO

Architektura

  • FPGA VersaTiles

  • Paměť Flash ROM – uživatelsky využitelná

  • Paměť SRAM / FIFO

  • Obvody pro řízení hodin a PLL

  • Vstupně-výstupní obvody

Architektura - schéma

Architektura - schéma

VersaTiles – základní buňka

Lze naprogramovat jako:

  • LUT-3

    Kombinační logika: umožňuje realizovat všechny 3-vstupové logické funkce

  • Asynchronní registr typu „Latch“ (závora) s nulovacím (Clear) nebo nastavovacím (Set) vstupem

  • D-Flip-Flop with Clear or Set

    Synchronní registr typu D s nulovacím (Clear) nebo nastavovacím (Set) vstupem

  • Enable D-Flip-Flop with Clear or Set

    Synchronní registr typu D s nulovacím (Clear) nebo nastavovacím (Set) vstupem a vstupem Enable

Statická paměť RAM (SRAM)

  • Každý paměťový blok lze nakonfigurovat nezávisle jako 256×18, 512×9, 1k×4, 2k×2 nebo 4k×1 bity.

  • Paměťový blok může fungovat v režimu FIFO.

  • Příznaky Almost-EmptyAlmost-Full.

Implementace jádra ARM7

  • Processor rodiny ARM7™ optimalizovaný pro FPGA

  • Architektura 32/16-Bit RISC

  • Instrukční sada 32-Bit ARM nebo16-Bit Thumb

  • 32-Bit Unified Bus Interface

  • 3-úrovňový pipelining

  • 32-bitová ALU

  • 32-bitový rozsah adresování paměti

  • Statický režim

  • Jednotka JTAG Interface

Vývojové prostředí Libero IDE

  • Možnost stažení omezené verze zdarma po registraci.

  • Plná verze je funkční 45 dnů.

  • Platformy: Windows, Solaris a Linux.

Libero IDE
 
{e_like}
 
 
Nahoru