Upload
rodrigue-rault
View
111
Download
5
Embed Size (px)
Citation preview
BENHARBONE William20 Septembre 2007
Pulse Start Laser SynchroPulse Start Laser Synchro
LabVIEW LabVIEW && F Fieldield PProgrammablerogrammable GGateate AArrayrrayLabVIEW LabVIEW && F Fieldield PProgrammablerogrammable GGateate AArrayrray
MC68HC08MC68HC08
XILINXXILINX255 cycles FSL
1µs < ΔΔT <T < 1sPrécision = 1µs
LabVIEWLabVIEW
FT232FT232
USB/VPCUSB/VPC
DS1023-50016,5 à 1292nsFSL
QSL
FML
QML
230µs230µs
140µs140µs
ΔΔTT n x QSLn x QSL
n x FSLn x FSL
100ms100ms
BENHARBONE William20 Septembre 2007
VHDLVHDLVery High Speed Integrated Circuit Very High Speed Integrated Circuit Hardware Description LanguageHardware Description Language
XABELXABELXilinx ABELXilinx ABEL
ABELABELAdvanced Boolean Expression LanguageAdvanced Boolean Expression Language
CPLDCPLD && FPGAFPGACPLDCPLD && FPGAFPGA
HistoriqueHistoriqueHistoriqueHistorique
LATTICE (CPLD) LATTICE (CPLD) XILINX (FPGA) XILINX (FPGA)
500 000
30 000
2 000
1998 2007
Portes Logiques
Logique Programmable Haute-Densité>>>>>>> ISPLSI1016E <<<<<<<<— 2 000 portes
—32 E/S, 4 Entrées dédiées
Logique Programmable Haute-Densité>>>>>>> ISPLSI1032EA <<<<<<<— 6 000 portes
—64 E/S, 4 Entrées dédiées
réseau de portes programmables in-situ >>>>>>>>> XCS30XL <<<<<<<<<<
— 30 000 Portes— 192 E/S
réseau de portes programmables in-situ>>>>>>>>> SPARTAN 3E <<<<<<<<— 500 000 Portes— 232 E/S
BENHARBONE William20 Septembre 2007
XXilinx – Présentationilinx – PrésentationXXilinx – Présentationilinx – Présentation
Langage ABELLangage ABELLangage ABELLangage ABEL STRUCTURE STRUCTURE OPERATEURS OPERATEURS
DéclarationsDéclarations• Entrées/SortiesEntrées/Sorties• Nœuds internesNœuds internes
Opérateurs ArithmétiquesOpérateurs Arithmétiques
- -A-A NégationNégation
- A-BA-B SoustractionSoustraction
+ A+BA+B AdditionAddition
* A*BA*B MultiplicationMultiplication
/ A/BA/B Division entière non signéeDivision entière non signée
% A%BA%B ModuloModulo
<< A<<BA<<B Décalage de A vers la gauche de B bits.Décalage de A vers la gauche de B bits.
>> A>>BA>>B Décalage de A vers la droite de B bits.Décalage de A vers la droite de B bits.
Opérateurs LogiquesOpérateurs Logiques
! !A!A NégationNégation
& A & BA & B ETET
# A # BA # B OUOU
$ A $ BA $ B OU EXCLUSIFOU EXCLUSIF
!$ A !$ BA !$ B NON OU EXCLUSIFNON OU EXCLUSIF
.CLK.CLK HorlogeHorloge
.D.D Bascule DBascule D
.CE.CE Clock EnableClock Enable
.RE.RE ResetReset
State_diagramState_diagram Machine d’étatMachine d’état
Truth_tableTruth_table Table de véritéTable de vérité
Simulation
EquationsEquations
• test_vectorstest_vectors• trace_statementtrace_statement
•SortieSortie.__.__ = Opérations ; = Opérations ;•NœudsNœuds.__.__ = Opérations ; = Opérations ;
MODULE portes"InputsA, B pin;"OutputsY1,Y2,Y3,Y4,Y5,Y6,Y7 pin istype 'com'; out = [Y1..Y7];Equations
Y1 = A & B; "EtY2 = A # B; "Ou
Y3 = A $ B; "Ou ExclusifY4 = !A; "NonY5 = !(A & B); "Non etY6 = !(A # B); "Non ou
Y7 = !(A $ B); "Non ou ExclusifTest_vectors([A,B] -> [out])[0,0] -> [.X.];[0,1] -> [.X.];[1,0] -> [.X.];[1,1] -> [.X.];END
BENHARBONE William20 Septembre 2007
XXilinx - Déclarationsilinx - DéclarationsXXilinx - Déclarationsilinx - Déclarations
Vue d’ensembleVue d’ensembleVue d’ensembleVue d’ensemble
EntréesEntrées
Nœuds Internes / Registres
SortiesSortiesEtat _____________________ BUSYImpulsions _____________ FSL, QSLImpulsions _____________ FML, QML
Période ______________ PER[7..0]Registre ΔT ___________ ADR[16.0]Polarité _____________ FSL ... QML
Largeur des impulsions _ FSL … QMLCompteurs ___________ FSL_à_QSLCompteurs ___________ FML_à_QML
RegistresRegistres
0000 Période[7..0]Période[7..0]
0101 ΔΔt[16]t[16]
0202 ΔΔt[15..8]t[15..8]
0303 ΔΔt[7..0]t[7..0]
0404 Polarité[3..0]Polarité[3..0]
Horloge 8 MHz ______________ CLKRAZ du Xilinx _____________ RESETOrdre de lancement ________ START
Bus de Donnée ________ HC08[7..0]Bus d’adresse __________ ADR[4..0]Ecriture ____________________ WR
CompteursCompteurs
Diviseur CLK[2..0]Diviseur CLK[2..0] 44
ΔΔT_[20..0]T_[20..0] 10485761048576
4 x Largeur Pulse [7..0]4 x Largeur Pulse [7..0] 255255
Impulsion FSL [16..0]Impulsion FSL [16..0] 131071131071
Impulsion FML [16..0]Impulsion FML [16..0] 131071131071
BENHARBONE William20 Septembre 2007
XXilinx - Fonctionnementilinx - FonctionnementXXilinx - Fonctionnementilinx - Fonctionnement
Start
Incrément CPT_FML
Incrément CPT_FSLImpulsion 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 QML CPT_FML=140µs
initialiser le "Compteur ΔT (20 bits)" à 1initialiser le "Compteur de Période" à 0initialiser le "Compteur FSL (100ms=16bits)" à 230usinitialiser 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µs230µs
140µs140µs
ΔΔTT n x QSLn x QSL
n x FSLn x FSL
100ms100ms
BENHARBONE William20 Septembre 2007
SSimulation Fonctionnelleimulation FonctionnelleSSimulation Fonctionnelleimulation Fonctionnelle
BENHARBONE William20 Septembre 2007
LLabVIEW abVIEW – National Instrument – National Instrument ™™LLabVIEW abVIEW – National Instrument – National Instrument ™™
USB: Virtual Port ComUSB: Virtual Port Com
n x FSLn x FSL: Période (ms): Période (ms)ΔΔTT: Delta T(µs)+Delta T (ns): Delta T(µs)+Delta T (ns)n x QSLn x QSL: Répétition: RépétitionPolaritéPolarité: FSL,QSL,FML,QML: FSL,QSL,FML,QML
USB: Virtual Port ComUSB: Virtual Port Com
n x FSLn x FSL: Période (ms): Période (ms)ΔΔTT: Delta T(µs)+Delta T (ns): Delta T(µs)+Delta T (ns)n x QSLn x QSL: Répétition: RépétitionPolaritéPolarité: FSL,QSL,FML,QML: FSL,QSL,FML,QML
FSL
QSL
FML
QML
230µs230µs
140µs140µs
ΔΔTT n x QSLn x QSL
n x FSLn x FSL
100ms100ms
BENHARBONE William20 Septembre 2007
LLabVIEW abVIEW – National Instrument – National Instrument ™™LLabVIEW abVIEW – National Instrument – National Instrument ™™
BENHARBONE William20 Septembre 2007
BENHARBONE William20 Septembre 2007
MERCIMERCIMERCIMERCI
55èmeème Rencontre Régionale Rencontre Régionale55èmeème Rencontre Régionale Rencontre Régionale