Я поместил модуль скремблера и дескремблера в vhdl соответственно, но результат дескремблера не такой же, как вход скремблера - PullRequest
0 голосов
/ 06 мая 2019

Я кодировал скремблер 10G Ethernet. Я узнал многочлен из стандарта ieee802.3ae. в документе была изображена блок-схема (49-10,49-8). когда я ставлю модуль скремблера и дескремблера соответственно. Я не могу видеть ввод скремблера на выходе дескремблера. Где моя проблема? и как я могу это исправить?

Я уже пробовал обратный битовый порядок, но он мне не помогает. (

- I0 - вход дескремблера - мой дескремблер

    O0(  38 downto  0 ) <= I0(  38 downto  0 ) XOR I1( 63 downto 25 ) XOR 
    I1( 44 downto  6 );
    O0( 57 downto  39 ) <= I0( 57 downto  39 ) XOR I0( 18 downto  0 ) XOR 
    I1( 63 downto 45 );
    O0( 63 downto 58 ) <= I0( 63 downto 58 ) XOR I0( 24 downto 19 ) XOR 
    I0(  5 downto  0 );
    I1  <= I0;

- I0 - вход скремблера - мой скремблер

    OO1 <= O0;
    O0( 38 downto  0  ) <= OO1( 63 downto 25 )  XOR OO1( 44 downto 06 ) 
    XOR I0( 38 downto  0  );
    O0( 57 downto  39 ) <= O0 ( 18 downto  0 )  XOR OO1( 63 downto 45 ) 
    XOR I0( 57 downto 39  );
    O0( 63 downto  58 ) <= O0 ( 24 downto 19 )  XOR  O0( 5  downto 0  ) 
    XOR I0( 63 downto 58  );

мой ожидаемый результат - это сходство между данными, которые я извлекаю в скремблер, и результатом дескремблера. Рисунок 49-8 скремблер ieee802.3ae Рис. 49-10. Дескремблер ieee802.3ae

1 Ответ

0 голосов
/ 11 мая 2019

Я решил свою проблему, моей проблемой было неправильное понимание рисунка 49-8. Я внедряю 64-битный скремблер за один такт.

...