4 votos

¿Se puede hacer una palanca de cambios de forma combinatoria?

Me dijeron que 66b/64b codificación en 10 gigabit Ethernet (10GBASE-R) requiere un ciclo de barril etapa, lo que añade un necesario de un ciclo para el teórico de la terminal de latencia.

La página de la Wikipedia sobre el barril de palancas de cambio de los estados que

Un barril de la palanca de cambios es un circuito digital que puede cambiar una palabra de datos por un especifica el número de bits en un solo ciclo de reloj.

Es "en un ciclo de reloj", un verdadero requisito? No puede barril manetas de hacer combinatoria? ¿Por qué 66b/64b codificación de tener un terminal de latencia de un ciclo?

3voto

Flory Puntos 1911

Usted no necesita una arbitraria carril alineación barril de la palanca de cambios en un TenG base-r MAC o PC (TX o RX lateral). Usted puede agregar dos carriles de la alineación de las posiciones en el TX PC como una optimización si desea utilizar una ejecución de IPG que puede agregar el siguiente paquete en un 4-carril de la frontera, en lugar de 8 carriles, y usted tiene un MAC, que se puede emitir con la mitad de la alineación. Pero eso es sólo una capa de 2-entrada de multiplexado y ahorra 33U en latencia, sólo para la parte posterior de los paquetes.

En la RX lateral hay una palanca de cambios de tipo en la RX gearboxing, pero que suele ser de hardware en los PMA (por debajo de la 64/66), por lo que generalmente no hay necesidad de preocuparse. El más bajo (de serie en la velocidad de reloj) parte general, sólo se salta un poco cuando se busca alineación del bloque, en lugar de hacer multiplexado. La mayor de las conversiones 32:66 40:66 hacia el bloque del lado de bloqueo están involucrados palancas de cambio, pero de nuevo, que por lo general vienen en el duro de la PC.

Para 64/66 de codificación, cada uno de los 64 bits de datos aparece en sólo tres posibles posiciones de bits en la salida, por lo que este pack muy bien en una sola 6-LUT. Como siempre, si tiempo lo permite se puede combinar el cambio con el entorno de la lógica, limitado solamente por su imaginación y la parte.

2voto

Sammo034 Puntos 26

El hecho de que toma un ciclo de reloj significa que se hace de forma combinatoria, es decir, no hay bloques de memoria en el interior. El punto es que en un sistema digital, el reloj es la base de tiempo, por lo tanto cualquier intervalo de tiempo que dura un múltiplo entero de ciclos de reloj. Desde que algo no puede ser instantáneo, el más pequeño intervalo de tiempo es un ciclo de reloj, por lo que una puramente combinacional módulo va a necesitar (si está bien hecha) al menos un ciclo de reloj. Que es una especie de convención de todos modos.

Se puede ver desde otro punto de vista, sin embargo: su lógica combinacional tendrá algunas entradas y algunas salidas, y puesto que su es digital de la velocidad de reloj de sistema, usted tendrá un registro de la entrada y uno de salida. Si se conecta más de una combinacionales módulos en cascada se puede ver como un gran combinacional módulo WLOG. Cuando se pone en el registro de entrada válido de entrada le espera una salida válido en el registro de salida, pero estará disponible sólo después de que al menos un ciclo de reloj.

Sobre su ethernet pregunta, si ahora piensa en ello estoy seguro de que usted puede entender por qué un ciclo se debe agregar: en un digital síncrona (desplazado) sistema de todo lo que sucede en uno de los reloj de los bordes, de modo que cuando la entrada es válida, usted debe esperar por la siguiente arista antes de consumir la salida para asegurarse de que la lógica combinacional hizo su trabajo.

2voto

user13107 Puntos 313

Se trata de lógica síncrona, que es FF -> cloud cloud -> FF -> logic cloud ad nauseam. La relación / captura del nuevo estado y la presentación para el siguiente ciclo de reloj es lo que está tomando el ciclo del reloj. Y es probable que el Muxing se haga de manera combinatoria.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X