Product SiteDocumentation Site

7.2. Automazione di Disegno Elettronico

Questa sezione sottolinea le modifiche nel Fedora Electronic Lab per Fedora 12. Notare che numerose applicazioni in FEL trovano applicazione in numerose comunità. Queste applicazioni specifiche sono evidenziate nelle sezioni Progettazione di Circuiti (che include la simulazione e il layout PCB) e Sviluppo embedded di queste note.

7.2.1. Revisione codice collaborativa

Uno dei molti aspetti della progettazione di hardware digitale comporta la tracciatura di molti file di essere inclusi in strumenti EDA multipli. Gli eventuali rapporti o netlist vengono analizzati con attenzione e loggati come parte della metodologia sign-off. Ogni compagnia traccia questi file dipendenti dal progetto sotto una struttura di cartelle definita e sotto un determinato sistema di revisione controllata di loro scelta.
È stata inclusa una soluzione per una più efficiente e affidabile revisione del codice nella raccolta Fedora. Questa soluzione per la revisione basata su trac inoltre aiuterà a creare link e riferimenti tra bug simili, compiti, changeset e file. I coordinatori del progetto avranno una visione più realistica del progetto in lavorazione e potranno tracciare i progressi molto più semplicemente in rispetto di milestone e deadline.

7.2.2. IDE predefinito Eclipse

Con l'aiuto ed il supporto del gruppo Eclipse Fedora, Eclipse è diventato l'IDE principale di FEL per lo sviluppo e documentazione IP di HDL. Questa adozione serve a mantenere l'interoperabilità di strumenti offerti da diversi produttori software embedded.
I seguenti plugin forniti in modo predefinito dalla piattaforma Fedora Electronic Lab miglioreranno:
  • progettazione di frontend
  • autogenerazione di documentazione e manutenzione di datasheet professionali
  • Perl/Tcl scripting (moduli Perl con caratteristiche simili a FEL10)
  • progetti sotto controllo di versione
Pacchetto Descrizione
eclipse-veditor Aiuta i progettisti digital IC/FPGA a sviluppare codice Verilog/VHDL su Eclipse. Fornisce una notifica in tempo reale di errori e warning per typos, segnali mancanti, segnali non necessari ecc.
eclipse-eclox Se il codice vhdl contiene commenti in stile doxygen, si può generare automaticamente un pdf e usarlo sia durante i meeting interni che per inviarlo ai clienti.
eclipse-texlipse Siccome il pdf viene generato da latex, il plugin texlipse fornisce alcune strutture di formattazione di pagina aggiuntive e una facile creazione di pdf. La creazione del pdf è ora solo Ctrl-S, piuttosto che un click manuale come bisognerebbe fare su kile. Detto questo, kile verrà rimosso dal livedvd FEL.
eclipse-cdt Fornisce strumenti di sviluppo embedded C e C++.
eclipse-dltk-tcl Gli script tcl possono essere mantenuti con il codice HDL.
eclipse-epic Gli script perl possono essere mantenuti con il codice HDL.
eclipse-subclipse Aggiunta l'integrazione di subversion ad Eclipse IDE
eclipse-egit Aggiunta l'integrazione con GIT a Eclipse IDE
Tabella 1. Plugin di Eclipse selezionati per il disegno hardware

7.2.3. Progettazione ASIC analogica

toped
Aggiornato alla versione consolidata 0.9.4. Il pacchetto Fedora Toped imposta la variabile $TPD_GLOBAL in /usr/share/toped in modo predefinito in modo che l'utente possa eseguire toped senza configurarlo.
Graham Petley and Krustev Svilen hanno fornito 2 file TELL come dimostrazione di come toped può interagire con le celle standard Pharosc tramite gli analizzatori CIF e GDSII di toped.
Punti salienti
  • Nuovo render grafico che velocizza il tempo di disegno di 3.5 volte. Richiede la versione 1.4 di OpenGL (F-11 usa 1.3, ma questo non è un problema) e gli oggetti Buffer virtuali. Esso verrà usato come base per gli effetti grafici futuri.
  • Il vecchio renderer rimane a copertura dei driver grafici che implementano le vecchie versioni openGL e desktop virtuali particolari.
  • Inoltre la velocità è notevolmente migliorata.
  • Aggiornamenti e risoluzioni nelle interfacce esterne. GDSII in particolare.
  • Nuovi strumenti per la conversione dei file in tecnologia Virtuoso(C) in TELL.
  • Formato TDT aggiornato con nuove voci. Versione aggiornata a 0.7.
  • Formato TDT aggiornato con nuove voci. Versione aggiornata a 0.7.
  • Altri aggiornamenti nella personalizzazione dell'interfaccia utente - barre degli strumenti.
  • Aggiornamenti nella gestione interna dei riferimenti alle celle. Come risultato il layer 0 ora viene gestito come un layer normale.

Le vecchie versioni di Toped non saranno in grado di leggere i file TDT generati da questa versione.

C'è una determinata quantità di codice che non è stata ancora unita al trunk principale di sviluppo, incluso l'analizzatore di rapporto d'errore calibre. Il suggerimento è di farlo dopo la release. Alcune caratteristiche saranno posticipate invece di sacrificare la stabilità in questo stadio.
Magic
Fedora Magic è stato aggiornato alla versione 8.0.54.
Il pacchetto Fedora Magic ha la sua documentazione in un pacchetto separato chiamato: magic-doc, che include alcuni esempi di scmos e tutorial. Gli utenti VLSI avanzati di Magic potrebbero essere interessati alla lettura della documentazione per trovare i dettagli interessanti inseriti nella serie 8.0.
Caratteristiche:
  • vettore font sottolineato (cortesia del progetto freefont), che mira a pulire molti problemi associati alle etichette di Magic.
  • Tutti gli schermi, manipolazioni, OpenGL sono completi.
  • Caratteristiche di alcuni operatori "cifoutput" per l'uso con il nuovo comando "cif paint", per la manipolazione di layout usando operatori booleani.
  • La velocità di esecuzione è stata migliorata.
  • Due menù aggiuntivi sono stati aggiunti per la manipolazione delle griglie e le impostazioni di testo.
Electric
electric è stato aggiornato alla versione 8.09.
Notare che siccome molti degli utenti base di electric usano plugin di terze parti che comportano incompatibilità di licenze con Fedora, il FEL non può aggiungere questi plugin. Detto questo, il gruppo del Fedora Electronic Lab comprende che rilasciando una nuova versione in upstream potrebbe rompere l'interoperabilità con i plugin degli utenti. Quindi le nuove versioni di electric prenderà posto una volta al repositorio di testing degli aggiornamenti.

7.2.4. Progettazione digitale

Dinotrace
Nuovo in Fedora 12, Dinotrace è un visualizzatore di forme d'onda che comprende i formati di trace Verilog Value Change Dumps, ASCII, ed altri.
Consente di posizionare cursori, evidenziare segnali e comprende funzioni di ricerca, stampa e altro, superiori a quelle di molti visualizzatori di forme d'onda commerciali.
Dinotrace è ottimizzato per il debugging rapido. Con VTRACE, una simulazione fallita posizionerà automaticamente i cursori dove si verifica l'errore, aggiungendo commenti visibili nel visualizzatore di forma d'onda. Quattro click del mouse e gli errori verranno sottolineati nel file di log, e i valori dei segnali all'errore verranno visti nel sorgente.
Fedora inoltre contiene dinotrace-mode per emacs nel pacchetto emacs-dinotrace-mode.
eqntott
eqntott converte le espressioni logiche booleane in una tabella di verità utile per la preparazione di input al pacchetto espresso per la minimizzazione logica, la conversione di espressioni logiche in forma più semplice, e per la creazione di tabelle di verità. eqntott è nuovo in Fedora 12.
expresso-ab
Nuovo per Fedora 12, espresso prende come input una rappresentazione a due livelli di una funzione booleana two-valued (o multiplevalued), e produce una rappresentazione minimale equivalente. Esso è uno strumento di minimizzazione di logica booleana.
Verilator
Verilator è il più veloce simulatore Verilog HDL gratuito. Compila Verilog sintetizzabile, piu alcune PSL, asserzioni SystemVerilog e Synthesis in codice C++ o SystemC. È disegnato per grandi progetti dove le prestazioni delle simulazioni rapide sono l'obbiettivo principale, ed è specialmente adatto a creare modelli eseguibili di CPU per gruppi di progettisti software embedded.
vrq
VRQ è un analizzatore verilog modulare che supporta strumenti plugin per un processo verilog. Si possono invocare strumenti multipli in un fashion pipeline con una sola esecuzione di vrq. È un analizzatore generico di front-end con supporto per plugin di strumenti personalizzabili di backend
Alliance
Il repositorio Fedora Alliance CVS devel ha ottenuto il suo 100mo aggiornamento in agosto 2009, in rispetto della stabilità su architetture 64 e siamo lieti che in upstream siano state applicate tutte le patch per alliance. Inoltre è stata creata questa nuova release per tutti i repository di testing Fedora e repository EPEL-5 testing. È inoltre presente una nuova GUI xgra, un visualizzatore di grafici, in arrivo con questa nuova release.
Non sostituiremo Alliance VLSI con herb (che era supportato per essere un ramo di alliance) su Fedora. Prima del rilascio di F-11, lo sviluppo di herb era attivo ma si è chiuso dopo l'uscita di F-11. Siccome Alliance VLSI in upstream è attivo e risponde alle nostre esigenze, non ci sono attualmente validi motivi per rendere obsoleto alliance in favore di herb.

7.2.5. Script perl per la progettazione hardware

perl-SystemPerl
Questo è un pacchetto nuovo per Fedora 12.
SystemPerl è una versione del linguaggio SystemC. È disegnato per espandere il testo, quindi non necessita di ripetizioni nel linguaggio minimizzato. Usando sp_preproc, i file SystemPerl possono essere estesi in file C++ nel momento della compilazione, o estesi in posto per renderli file SystemC stand-alone validi.
perl-Verilog-Perl
perl-Verilog-Perl è stato aggiornato alla versione 3.123. Le nuove caratteristiche includono:
  • Avvisi migliorati quando "do" viene usato come identificatore.
  • Risolti gli identificatori di preprocessore sfuggiti, bug106.
  • Risolto errore di compilazione Perl 5.8.8, rt48226.
  • Risolto errore di compilazione Perl 5.8.0 con callbackgen.

Avvertimento

perl-Verilog-Perl rende obsoleto perl-Verilog. Gli utenti Fedora sono avvisati di impostare in accordo i propri script Perl.