• Aucun résultat trouvé

Projet circuits intégrés

N/A
N/A
Protected

Academic year: 2022

Partager "Projet circuits intégrés"

Copied!
24
0
0

Texte intégral

(1)

Projet circuits intégrés

Conception d’une chaîne de

communications numériques CDMA

Olivier Sentieys Hélène Dubois IRISA/ENSSAT

(2)

Objectifs

  Chaîne de communication numérique CDMA (IS95, WCDMA, CDMA2k)

  Emetteur, récepteur, canal de transmission

  Lien entre une simulation algorithmique de référence (Matlab®) et les simulations

RTL et portes

  Découpe en blocs précise et partage des tâches à réaliser

(3)

Vue extérieure du circuit

Circuit CDMA

clk rstb

ClkFe ClkFc ClkFs ClkBR DAclk ADclk NADclk data

demodata error FromCAN[11:0]

ToCNA[13:0]

(4)

Circuit complet

h(n) R.N

data2(n) R.Fc

data3(n)

R

data1(n)

Etalement Fc

(Spreading)

I(n)

Q(n) Fs

Générateur Code PN Modulation

(Mapping)

data(n) BR

data8(n) Fs

Démod. demodata(n) BR

data7(n) Fc

X Σ SF

hTx(n) R.N

data5(n) R.Fc

R

r

Interface

Interface

Calcul BER

err

(5)

Transmetteur : modulation QPSK

•  Fréquence symbole Fs

•  Débit binaire BR

•  Bande de base : mapping

Modulation (Mapping)

data(n)

ich(n)

qch(n)

10

4 3π

4 π

4 7π 4

5π 00

01 11

t

10 01 11 00 10

t

1 1 0 0 1 0 0 1

data(n) I(n)

Q(n)

BR Fs

I(n), Q(n) {-1,+1}

(6)

Technique d’accès multiple

f S(f,t)

t

Multiplexage par code

c1 c2

c3

Multiplexage

fréquentiel Multiplexage temporel

FDMA

frequency division multiple acces

S(f,t)

f f

f1 f2 f1 f1

t t

NU.T

S(f,t)

TDMA

time division multiple acces CDMA

code division multiple acces

(7)

br(t)

Bits à transmettre

Ts

2

Σ

+1

-1

+1

-1

+1

-1

+1

-1

+1

-1

+1

-1

Bits à transmettre

Code

Code

Signal reçu Code

Bits estimés

Sr(f)

Tc

2 f0

Technique d’accès multiple CDMA

(8)

Propriétés des codes d’étalement

  Codes orthogonaux entre eux

C41 : (1 1 1 1 ) C42: (1 -1 1 -1) C43: (1 1 -1 -1) C44 : (1 -1 -1 1 )

Σ C42 . C41 = 1 × 1 + -1 × 1 + 1 × 1 + -1 ×1 = 0

Σ C42 . C42 = 1 × 1 + -1 × -1 + 1 × 1 + -1 ×-1 = 4

Σ C42 . C43 = 1 × 1 + -1 × 1 + 1 × -1 + -1 ×-1 = 0

Σ C42 . C43 = 1 × 1 + -1 × -1 + 1 × -1 + -1 ×1 = 0

(9)

Bits à Transmettre

Utilisateur 1

+1

-1

+1

-1

+1

-1

+2

-2

+1

-1

+4

-4

Code 1

Utilisateur 1 Signal

reçu

Corrélation calculée

Technique d’accès multiple CDMA

Bits à Transmettre Utilisateur 2

+1

-1

+1

-1

+1

Code 2 Utilisateur 2

Signal Utilisateur 1

Signal Utilisateur 2

+1

-1

Bits estimés

Code 1 Utilisateur 1

(10)

  Spreading Factor SF = 8

  Fréquence chip Fc

Transmetteur : étalement CDMA

Etalement

(Spreading) data1(n)

I(n)

Q(n)

Fs Fc = SF.Fs

Générateur Code PN

{-1, -1, -1, -1, 1, 1, -1, -1}

data1(n) = code(n).[ich(n)+j.qch(n)]

data1(n) = ich1(n) + j.qch1(n) Re[data1(n)] {-1,+1}

Im[data1(n)] {-1,+1}

(11)

Transmetteur : sur-échantillonnage

  Insertion de (R-1) zéros

  Fréquence R.Fc

  Pour le projet : R=2

R

data1(n) R.Fc

Fc data2(n)

data2(n) = data1(n) si n = k.R data2(n) = 0 si n ≠ k.R data2(n) = ich2(n) + j.qch2(n)

Tc

(12)

Transmetteur : filtrage de Nyquist

  Filtre FIR, N = 16, avec un

suréchantillonnage d’un facteur R

(13)

Transmetteur : filtrage de Nyquist

  Sur-échantillonnage d’un facteur R=4

  R.N=64 coefficients sur 8 bits

hTx(n) R.N

data2(n) R.Fc

data3(n)

(14)

Transmetteur

  Chaîne d’émission complète

h(n) R.N

data2(n) R.Fc

data3(n)

R

data1(n)

Etalement Fc

(Spreading)

I(n)

Q(n) Fs

Générateur Code PN Modulation

(Mapping)

data(n) BR

(15)

Canal de transmission

  Filtrage, trajets multiples, bruit additif

•  CNA 14 bits non signés

•  CAN 12 bits c-à-2

•  Fe = 80 MHz / ?

data3(n)

Interface Filtrage +

Bruit e(n)

Blanc Gaussien Puissance Eb/N0

Atténuation

data5(n) CAN

CNA

Interface

(16)

  Filtrage RIF taille R.N

  Sous-échantillonnage R

  Choix de l’instant d’échantillonnage d’optimal r

•  r {0,1,…,R-1}

hTx(n) R.N

data5(n) Fe=R.Fc

data6(n) R data7(n)

r {0,1,…,R-1}

Récepteur : filtrage de Nyquist

R.Fc Fc

(17)

Récepteur : dés-étalement

  Corrélation entre le signal est le code

data7(n) Fc

Σ

Générateur Code PN

X SF

data8(n) Fs = Fc/SF

(18)

  1 symbole complexe ⇒ 2 éléments binaires

Récepteur : démodulation

data8(n) Fs

Démodulation

demodata(n) I(n)

Q(n)

BR

(19)

Récepteur

  Chaîne de réception complète

data8(n) Fs

Démod. demodata(n) BR

data7(n) Fc

X Σ SF

Générateur Code PN

hTx(n) R.N

data5(n) Fe=R.Fc

R

r

(20)

Circuit complet

h(n) R.N

data2(n) R.Fc

data3(n)

R

data1(n)

Etalement Fc

(Spreading)

I(n)

Q(n) Fs

Générateur Code PN Modulation

(Mapping)

data(n) BR

data8(n) Fs

Démod. demodata(n) BR

data7(n) Fc

X Σ SF

hTx(n) R.N

data5(n) R.Fc

R

r

Interface

Interface

Calcul BER

err

(21)

  Simulation Matlab® de référence

Test du circuit

h(n)

data2(n) R.N

R.Fc

data3(n)

R

data1(n)

Etalement Fc

(Spreading)

I(n)

Q(n) Fs

Générateur Code PN Modulation

(Mapping)

data(n)

rand BR Filtrage +

AWGN

data8(n)

Démod. Fs demodata(n)

BR

data7(n) Fc

Σ X

SF

Générateur Code PN

hTx(n)

R.N data5(n)

R.Fc

R

r

Calcul BER

err

Atténuation

(22)

Test du circuit

  Simulation Matlab® de référence

  Ecriture des données dans des fichiers

200

0, 1, 0, 1, 0, 1, 1, 0, 0, 0, 0, 1, 1, 0, 1, 0, 0, 1, 0, 0, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 0, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 1, 1, 0, 0, 1, 1, 0, 1, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 0, 0, 1, 0, 0, 1, 1, 1, 0, 1, 0, 1, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 0, 0, 1, 1, 1, 0, 1, 0, 1, 0, 1, 1, 0, 1, 1, 1, 0, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 1, 1, 1, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 0, 0

data(n)

data1(n) data7(n)

Test des blocs VHDL

read_file : process

file test : text open read_mode is "trame_data.dat";

variable l : line;

variable r : integer;

variable good_number : boolean;

begin

while true loop

while not endfile(test) loop readline(test, l);

read(l, r, good => good_number);

next when not good_number;

(23)

Carte de développement

  Altera Stratix EP1S25

  Convertisseur A/N 12 bits AD9433

  Convertisseur N/A 14 bits DAC904

  Mémoire SRAM externe

  Horloge 80 MHz (clk)

(24)

Une personne : un bloc

Chaque bloc communique avec les autres

Travail d'équipe…

  Découpe précise du travail

  Distribution des tâches

  Fixer les vues extérieures

  Préciser les interfaces et les échanges de données

Références

Documents relatifs

L’archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des

2014 Le contraste de potentiel créé par un faisceau d’électrons permet, grâce au phénomène de couplage capacitif, le relevé du potentiel sur des circuits

Lors de la troisième étapes il vous faudra extraire les différents éléments du layout ( les transistors et leurs dimensions, et éventuellement les capacités

• La fréquence maximale d’horloge devra être donnée pour chaque bloc synchrone, puis pour le circuit global.. • Les mémoires RAM ou ROM peuvent être spécifiées

L’archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des

La simplicité des fonctions réalisées par des transistors MOS complémentaires permet aux circuits CMOS de fonctionner dans une large gamme de tension d'alimentation (3 à

Le but de cette première partie est de bâtir le modèle du banc d'injection BCI et de déterminer les consignes de puissance à injecter pour induire une valeur de courant donné sur

In the two examples described above, the key point was to use a wavelet transform mapping the L 2 space of the considered space (IR or IR 2 ) into the L 2 space of the