Частина тексту файла (без зображень, графіків і формул):
МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ «ЛЬВІВСЬКА ПОЛІТЕХНІКА»
ІКТА
Кафедра ЗІ
/
ЗВІТ
До лабораторноїроботи №3
ДОСЛІДЖЕННЯ КОДОУТВОРЕННЯ ТА ПРИНЦИПІВ ПОБУДОВИ
КОДЕРІВ І ДЕКОДЕРІВ ІТЕРАТИВНИХ КОДІВ
Львів – 2014
Мета роботи – вивчити принципи побудови ітеративних кодів, дослідити перетворення
двійкового коду в двоступеневий ітеративний код та формування синдрому помилки, одержатипрактичні навики розробки функціональних схем кодерів і декодерів.
Ni=7; Nk=11; N=18; R=
11
18
=0,61; Nз=
2
18
−
2
7
;
Номер заліковки N-09247
Матриця та внесені спотворення із перевіркою синдромів.
0
1
2
3
4
5
6
0
0
0-4
1-5
0
1
1
1
0
0
0
0
1
0
0
0
0-1
0-3
1
1
0
1
1
0
1
1
0
0
0
0
0
0-2
1
0-6
1
1
0
1
0
0
1
1
1
1
0
0
0
1
0
1
1
0
1
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
2
0
0
0
0
0
0
0
3
0
0
1
0
0
0
0
4
0
0
0
0
0
0
0
5
0
0
0
1
0
0
0
6
0
0
0
0
0
0
0
Програма
Функція f1
function [s1 s2]=f1(a)
s1=[];
for i=1:1:4
s=0;
for j=1:1:8
s=s+a(i,j);
end
if(fix(s/2)-s/2)==0
s1(i,1)=0;
else s1(i,1)=1;
end
end
s1
for j=1:1:8
s=0;
for i=1:1:5
s=s+a(i,j);
end
if(fix(s/2)-s/2)==0
s2(j)=0;
else s2(j)=1;
end
end
s2
Функція f2
function [a]=f2(a)
for i=1:1:4
s=0;
for j=1:1:7
s=s+a(i,j);
end
if(fix(s/2)-s/2)==0
a(i,8)=0;
else a(i,8)=1;
end
end
for j=1:1:7
s=0;
for i=1:1:4
s=s+a(i,j);
end
if(fix(s/2)-s/2)==0
a(5,j)=0;
else a(5,j)=1;
end
end
a(5,8)=1;
a
Метод
a=[0 0 0 1 0 1 1 0;
0 0 0 1 1 0 1 0;
0 0 1 0 1 1 0 0;
0 0 1 0 1 1 0 0]
a=f2(a);
a(2,2)=~a(2,2)
f1(a);
a(3,2)=~a(3,2)
f1(a);
a(2,4)=~a(2,4)
f1(a);
a(1,4)=~a(1,4)
f1(a);
a(1,6)=~a(1,6)
a(3,6)=~a(3,6)
f1(a);
Перевірка синдромів у Logicworks. 0 помилок
/
6 помилок
/
Висновок
Інтерактивні коди використовують для завадостійкості повідомлення. Їхній принцип полягає у складанні матриці з двійкових кодів і на основі цієї матриці формуються синдроми. Ці коди легко реалізувати на програмному рівні, тому вони часто використовуються в ЕОМ. Головним недоліком ІК є їх велика надлишковість.