Parte 3 Flashcards

1
Q

Que transacciones comprende la capa de TLP?

A
IO read/write
Configuration r/w
Completion 
Messages 
AtomicOp
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Que paquetes comprende la capa de enlace DLLP?

A

Power management
Link flow control
Vendor-specific

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Menciona las 3 ventajas de un protocolo basado en paquetes (packet-based protocol)?

A
  1. El formato del paquete es bien definido
  2. Los símbolos del granado definen los límites (inicio/fin)
  3. Con el CRC se protege el paquete completo
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Que significa que el formato del paquete está bien definido?

A

Para facilitar el chequeo de errores como de paridad se debe conocer el tamaño y formato en el header.
Y se incluye información de los TLPs como los símbolos de tramas, CRC y número de secuencia del paquete.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Los símbolos de la trama definen los límites del paquete de que manera?

A

En generaciones PCI gen1 y gen2 la codificación es 8b/10b por lo que los TLPs y DLLPs tienen símbolos de control que definen un START y END del paquete.
En gen 3 + donde la codificación es 128/130b no se utilizan más estos símbolos de control.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Cuál es la ventaja de implementar CRC para proteger el paquete?

A

Al detectar un error en el receptor el paquete se puede reenviar ya que se guarda una copia en el Retry Buffer hasta que se ha recibido un acknowledged por parte del receptor.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

En el lado del transmisor como es que se ensambla un TLP?

A
  • Target address (routing information)
  • Source information (requester ID, tag)
  • Transaction type / packet type
  • Data payload size
  • Traffic class (priority)
  • Attributes of the request (no-snoop, Relaxed ordering, etc)
  • Pasa al Retry buffer
  • Se integra el STP
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Cuál es la función del Retry Buffer?

A

Almacena una copia del paquete hasta que el receptor emite un Ack

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Qué es el campo STP?

A

En gen 1 y gen 2 se es necesario indicar un inicio y un final, en gen 3 el STP (Start TLP) es un token que contiene la información del tamaño del paquete se inserta al comienzo de la trama y por tal motivo ya no es necesario los símbolos de start/stop.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Como se efectúa el desamblado de un paquete en el receptor?

A

Se hace lo opuesto al assembly.

La capa física deserealiza, decodifica y une los stripped bytes, los caracteres del STP de control se consumen en esta capa.

El DLL calcula el CRC si coincide con el del TLP recibido revisa el sequence number si no hay errores se remueve la sección retorna un Ack DLLP y avanza el TLP.

Finalmente en la capa de transacciones el TLP es decodificado y la información llega al core del device.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Que ocurre si se retorna un not acknowledge? Nack

A

Del Retry buffer se reenvía el paquete

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Según la estructura del TLP de que longitud es el header?

A

Puede ser de 3DW o 4DW

12 o 16 bytes

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Según la estructura del TLP de que longitud es el dato? Payload

A

Es opcional puede ser de hasta 1024 DW que lo especifica el Byte Enable o byte-aligned con las direcciones de inicio y fin.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Cuál es el tamaño del campo Digest / ECRC.?

A

Es opcional cuando existe y es de 1 DW

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Menciona los códigos para el campo Format?

A

000 3DW no-data
001 4DW no-data
010 3DW with data
011 4DW with data

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Que significan las siglas ECRC?

A

End-to-end Cíclic redundancy check

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Como se origina el ECRC de los TLPs?

A

Los dispositivos calculan el ECRC y lo aplican a todos los TLPs que se originan.
Si se incluye ECRC se debe incluir AER (advanced error reporting)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

Cuales dos bits se pueden modificar en el trayecto?

A

El bit 0 del campo type

El bit Error / Poisoned (EP)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

El bit 0 del campo type como se cambia en el trayecto ?

A

Pasa a ser cero cuando se presenta una transacción de configuración y cruza por el bridge así pasa de ser type 1 a type 0

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

De que forma cambia el bit Error / poisoned EP?

A

Puede cambiar cuando un TLP logra pasar por la fab sin complicaciones y se detectan errores en los datos por lo que se perciben como corruptos.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

Quien revisa el ECRC?

A

El último dispositivo que recibirá el TLP.

22
Q

En que consiste revisar el ECRC?

A

El LCRC es para verificar que no haya errores en la transmisión pero se podría dar el caso que algunos errores se enmascaren por lo que al tener un ECRC aumenta la probabilidad que los errores sean detectados.

23
Q

Principal ventaja de usar byte enable. ? BE

A

Permite al dispositivo identificar el primer DW habilitado y el último DW que será empleado (first / last) y así saber cuales son los bytes de interés que están dentro de esos DW transferidos.

24
Q

Que bits o campos construyen el Transaction Descriptor?

A

Transaction ID
Transaction Attributes
TC

25
Q

Cuál es la función de emplear un transaction descriptor ?

A

Para que en todo momento se pueda identificar al propietario de la transacción, este descriptor es único así se asegura que el paquete correcto llegue al destino correcto.

26
Q

Cómo está compuesto el transaction ID?

A
Lo forman la combinación del 
Requester ID (bus, dev, fn number)
Y el TAG field del TLP
27
Q

Cuales son los atributos de una transacción ?

A

ID-based ordering
No-snoop
Relaxed Ordering

28
Q

Que significan las siglas RCB?

A

Read Completion Boundary

29
Q

Cuál es la longitud del header para los requests de configuración?

A

Los paquetes de configuración siempre van con un header de 3Dws

30
Q

De que transacciones se espera el retorno de un completion con dato?

A

De los memory reads, IO Reads y Configuration reads

31
Q

De que transacciones se espera un completion sin dato?

A

IO writes y configuration writes

32
Q

Que códigos se usan para los completion [7:5]?

A
000b = SC
001b = UR
010b = CRS
100b = CA
33
Q

Menciona los tipos de completion?

A
  • Successful Completion (SC)
  • Unsupported Request (UR)
  • Configuration Request Retry Status (CRS)
  • Completer Abort (CA)
34
Q

Que es el UR?

A

Cuando el completer no reconoció el completion indica un error, la definición depende de la spec.

35
Q

Que es el CRS y cuando surge?

A

Los CRS solo son para requests de configuración otra respuesta es ilegal y se trata como malformed TLP

36
Q

Cuál es la longitud del header de los mensajes?

A

Usan un header de 4DWs aunque dejen campos sin usar.

37
Q

En que modelo de transacciones se clasifican los mensajes?

A

La mayoría de las veces son tratados como Posted memory-writes transactions.

38
Q

Cuales son los 9 grupos de los mensajes enviados en el byte 7?

A
  1. INTx Interrupt Signaling
  2. Power management
  3. Error signaling
  4. Locked transaction support
  5. Slot power limit support
  6. Vendor-defined messages
  7. Ignored messages (related to hot-plug support)
  8. Latency Tolerance Reporting (LTR).
  9. Optimized buffer flush and fill (OBFF)
39
Q

Cuantos canales virtuales (VC) soporta PCIe?

A

Hasta 8

De 0-7

40
Q

Que capas intervienen en el FC?

A

Las funciones de FC se comparten entre la capa de transacción y de enlace (DLL), la primera tiene los contadores y la segunda envía y recibe la información.

41
Q

Que tipo de transacciones fluyen por los canales virtuales del FC buffers?

A

Memory writes y mensajes (Posted)

Memory reads, configuration r/w, IO r/w (non-posted)

Completions r/w

42
Q

Que porciones o secciones pueden tener las transacciones como memory writes?

A

Header + data

43
Q

Que porción lleva una memory read?

A

Solo header

44
Q

En que orden se debe enviar la secuencia de Flow control DLLs?

A
  1. Posted
  2. Non-posted
  3. Completions
45
Q

Cuál es el tamaño del header credits?

A

Maximum header size + Digest
4DWs para completions
5DWs for requests

46
Q

Cuál es el tamaño del data credits?

A

4DWs aligned 16 bytes

47
Q

Como se debe identificar que se asignó infinit credits en el device?

A

Con el valor de 00h

48
Q

Que significan las siglas DLCMSM?

A

Data Link Control and Management State Machine

49
Q

Que indica la señal Link-up?

A

Indica que la capa física ha terminado de entrenar el link (link training) y da paso a la inicialización del FC.

50
Q

Como se da la inicialización del Flow control?

A

Ya que se entreno el link en la capa física, la inicialización ocurre en cada link en el sistema a través de un handshake entre los dispositivos de los extremos del link.

51
Q

Que estados se encuentran dentro del estado DL_active?

A

FC_init1

FC_init2