BENHARBONE William20 Septembre 2007 Pulse Start Laser Synchro LabVIEW & F ield P rogrammable G ate A rray MC68HC08 MC68HC08 XILINX 255 cycles FSL ΔT < 1µs < ΔT < 1s Précision = 1µs LabVIEW FT232 FT232 USB/VPC USB/VPC DS ,5 à 1292ns FSL QSL FML QML 230µs 140µs ΔTΔTΔTΔT n x QSL n x FSL 100ms
BENHARBONE William20 Septembre 2007 VHDL Very High Speed Integrated Circuit Hardware Description Language XABEL Xilinx ABEL ABEL Advanced Boolean Expression Language CPLD & FPGA HistoriqueHistorique LATTICE (CPLD) XILINX (FPGA) Portes Logiques Logique Programmable Haute-Densité >>>>>>> ISPLSI1016E <<<<<<<< portes 32 E/S, 4 Entrées dédiées Logique Programmable Haute-Densité >>>>>>> ISPLSI1032EA <<<<<<< portes 64 E/S, 4 Entrées dédiées réseau de portes programmables in-situ >>>>>>>>> XCS30XL <<<<<<<<<< Portes 192 E/S réseau de portes programmables in-situ >>>>>>>>> SPARTAN 3E <<<<<<<< Portes 232 E/S
BENHARBONE William20 Septembre 2007 Xilinx – Présentation Langage ABEL STRUCTURE OPERATEURS Déclarations Entrées/Sorties Entrées/Sorties Nœuds internes Nœuds internes Opérateurs Arithmétiques --ANégation -A-BSoustraction +A+BAddition *A*BMultiplication /A/B Division entière non signée %A%BModulo <<A<<B Décalage de A vers la gauche de B bits. >>A>>B Décalage de A vers la droite de B bits. Opérateurs Logiques !!ANégation & A & B ET # A # B OU $ A $ B OU EXCLUSIF !$ A !$ B NON OU EXCLUSIF.CLKHorloge.D Bascule D.CE Clock Enable.REReset State_diagram Machine détat Truth_table Table de vérité Simulation Equations test_vectors test_vectors trace_statement trace_statement Sortie.__ = Opérations ;Sortie.__ = Opérations ; Nœuds.__ = Opérations ;Nœuds.__ = Opérations ; MODULE portes "Inputs A, B pin; "Outputs Y1,Y2,Y3,Y4,Y5,Y6,Y7 pin istype 'com'; out = [Y1..Y7]; Equations Y1 = A & B; " Et Y2 = A # B; "Ou Y3 = A $ B; " Ou Exclusif Y4 = !A; "Non Y5 = !(A & B); "Non et Y6 = !(A # B); "Non ou Y7 = !(A $ B); " Non ou Exclusif Test_vectors ([A,B] -> [out]) [0,0] -> [.X.]; [0,1] -> [.X.]; [1,0] -> [.X.]; [1,1] -> [.X.]; END
BENHARBONE William20 Septembre 2007 Xilinx - Déclarations Vue densemble Entrées Nœuds Internes / Registres Sorties Etat _____________________BUSY Impulsions _____________FSL, QSL Impulsions _____________ FML, QML Période ______________PER[7..0] Registre ΔT ___________ ADR[16.0] Polarité _____________FSL... QML Largeur des impulsions _FSL … QML Compteurs ___________ FSL_à_QSL Compteurs ___________FML_à_QMLRegistres00Période[7..0] 01 Δt[16] 02 Δt[15..8] 03 Δt[7..0] 04Polarité[3..0] Horloge 8 MHz ______________CLK RAZ du Xilinx _____________RESET Ordre de lancement ________ START Bus de Donnée ________HC08[7..0] Bus dadresse __________ADR[4..0] Ecriture ____________________WRCompteurs Diviseur CLK[2..0] 4 ΔT_[20..0] x Largeur Pulse [7..0] 255 Impulsion FSL [16..0] Impulsion FML [16..0]
BENHARBONE William20 Septembre 2007 Xilinx - Fonctionnement Start Incrément CPT_FML Incrément CPT_FSL Impulsion FSL CPT_FSL = 100ms Impulsion QSL CPT_FSL = 230µs Incrément CPT_PERIODE Lancer CPT_ΔT CPT_PERIODE = REG_PERIODE CPT_PERIODE=0 CPT_FSL=0 CPT_ΔT = REG_ΔT Impulsion QMLCPT_FML=140µs initialiser le "Compteur ΔT (20 bits)" à 1 initialiser le "Compteur de Période" à 0 initialiser le "Compteur FSL (100ms=16bits)" à 230us initialiser le "Compteur FML (100ms=16bits)" à 140us Impulsion FML CPT_FML = 100ms CPT_FML=0 CLK = 1µs STOP CPT_ΔT & CPT_ΔT=0 FSL QSL FML QML 230µs 140µs ΔTΔTΔTΔT n x QSL n x FSL 100ms
BENHARBONE William20 Septembre 2007 Simulation Fonctionnelle
BENHARBONE William20 Septembre 2007 LabVIEW – National Instrument LabVIEW – National Instrument USB: Virtual Port Com n x FSL: Période (ms) ΔT: Delta T(µs)+Delta T (ns) n x QSL: Répétition Polarité: FSL,QSL,FML,QML USB: Virtual Port Com n x FSL: Période (ms) ΔT: Delta T(µs)+Delta T (ns) n x QSL: Répétition Polarité: FSL,QSL,FML,QML FSL QSL FML QML 230µs 140µs ΔTΔTΔTΔT n x QSL n x FSL 100ms
BENHARBONE William20 Septembre 2007 LabVIEW – National Instrument LabVIEW – National Instrument
BENHARBONE William20 Septembre 2007
BENHARBONE William20 Septembre 2007 MERCIMERCI 5 ème Rencontre Régionale