• 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

n stimulus connu : avoir accès aux entrées de l'entité et appliquer une valeur connue.

Dans ce contexte, les inconvénients précités du silicium ont été largement compensés par les atouts d’intégration très dense de la photonique Si et de sa co-intégra-

Nous avons modélisé, sous forme logicielle, le codage des blocs de données, leur transmission sur canal gaussien et canal de Rayleigh avec une modulation à déplacement de phase à

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 fonction de base, la porte ET-NON en logique positive, est constituée par un réseau de diodes couplé à un transistor inverseur par l'intermédiaire de diodes de

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 à

L’objectif de cette séance est d’implanter un émetteur et un récepteur de transmission d’un signal numérique codé Manchester au sein d’un CPLD.. Nous utiliserons