Forum: FPGA, VHDL & Co. GTP I/Os im FPGA noch abänderbar?


You were forwarded to this site from EmbDev.net. Back to EmbDev.net
von mehrrerer (Gast)


Lesenswert?

Hallo guten Tag,

von meinem IP Core gehen 16 Signale zu meinen MGT216 Transceiver.
Auf dem Schaltplan steht, man soll die Zuordnung und Polarität in der 
FPGA-Konfig noch anpassen.

* Geht das oder sind die PADs direkt mit den Transceivern verbunden?
* Im Device Browser gehen die immer über eine Art Switch.

Aktuell ist die Konfiguration z.B.:
1
XTX0_3N -->  (B11) MGTPRXP0_216 --> GPE2_CHANNEL_X0Y4

Es müsste aber vermutlich z.B. folgendes sein:
1
XTX0_3N -->  (B11) MGTPRXN3_216 --> GPE2_CHANNEL_X0Y7

* Bei meinen ersten beiden Versuchen (*.xdc ändern / Signale in der 
toplvl anders zuweisen) kamen identische/ähnliche critical warnings beim 
Implementierungsschritt:
1
[Vivado 12-1411] Cannot set LOC property of ports, Cannot set PACKAGE_PIN property of ports,  port a7_mgt216_rx_p_i[0] can not be placed on PACKAGE_PIN B11 because the PACKAGE_PIN is occupied by port a7_mgt216_rx_n_i[3] ["w/myconstraints.xdc":25]
1
set_property PACKAGE_PIN B11            [ get_ports a7_mgt216_rx_p_i[0]  ]
2
set_property PACKAGE_PIN C12            [ get_ports a7_mgt216_rx_n_i[3]  ]

* Also bei dem PAD B11 wurde bereits etwas für C12 gesetzt?
* Außerdem kommt eine Meldung, dass OBUF nicht gesetzt werden kann.
* Das hatte ich bereit bei meiner Clock.
1
[Vivado 12-1411] Cannot set LOC property of ports, Could not legally place instance a7_mgt216_tx_n_o_OBUF[3]_inst at C10 (OPAD_X0Y14) since it belongs to a shape containing instance xaui_core/U0/gt_wrapper_i/gt1_xaui_0_gt_wrapper_i/gtpe2_i.
2
3
 The shape requires relative placement between 
4
5
a7_mgt216_tx_n_o_OBUF[3]_inst and 
6
7
xaui_core/U0/gt_wrapper_i/gt1_xaui_0_gt_wrapper_i/gtpe2_i
8
9
 that can not be honoured because it would result in an invalid location for xaui_core/U0/gt_wrapper_i/gt1_xaui_0_gt_wrapper_i/gtpe2_i. [".../nstraints.xdc":41]

Vielleicht kann man auch dem Transceiver selber mitteilen, dass er sich 
anders verhalten soll.

Vielen Dank :)

von mehrrerer (Gast)


Lesenswert?

ah, da ich die transceiver nie einzeln instantiiert habe, sonder immer 
durch meinen XAUI-Core, ist mir noch gar nicht die Idee gekommen die 
Transceiver "einfach" anders an den XAUI anzuschließen.
1
xaui <-> transceiver <[nix änderbar]<-> phy 
2
xaui <- ->[verändere ein paar verbingungen] transceiver<[nix änderbar]<-> phy

Hoffentlich geht das.

von Messtechniker (Gast)


Lesenswert?

Meiner Erinnerung nach hatte das letzte Vivado genau dort einen bug. Man 
musste das einzeln setzen. War extra ein FAE dran, der das angeschoben 
hat.

von mehrrerer (Gast)


Lesenswert?

Echt oder machst du nur einen Scherz xD

Was meinst du mit einzeln setzen?

Also mich würde interessieren ob es denn überhaupt möglich wäre?

von Christian R. (supachris)


Lesenswert?

Das hatten wir doch neulich hier schon. Du kannst, wenn dann überhaupt 
nur die GTP Lanes innerhalb eines Quad verschieben. Die Polarität musst 
du im IP Core einstellen, die GTP haben einen Parameter dafür. Ansonsten 
stellst du doch auch für die Zuordnung zu den FPGA Pins alles über den 
Core ein, oder? Also jedenfalls beim "nackten" MGT gebe ich da an, 
welche(n) Transceiver ich nutzen will.

von mehrrerer (Gast)


Lesenswert?

Christian R. schrieb:
> Das hatten wir doch neulich hier schon.

Auf jeden Fall was mit Transceivern ... xD

Christian R. schrieb:
> Die Polarität musst
> du im IP Core einstellen, die GTP haben einen Parameter dafür.

* gibt im xaui ip core eine Einstellung zur änderungen der Lanes
* hier geht es aber nicht um ganze tx rx lanes sondern um einzelne
* man müsste das evtl. manuell erledigen:
* Wäre die Frage, ob das so einfach geht, weil der xaui-ip-core ein paar 
Schaltungen dazwischen hat.

* Aber vielleicht muss ich mir nur die Zwischenstufen anschauen, ändern 
und dann ist alles gut.
* Vielleicht aber auch einfach nicht.

>Ansonsten
> stellst du doch auch für die Zuordnung zu den FPGA Pins alles über den
> Core ein, oder?
* Ja genau nur dieses mal geht es nicht so einfach denke ich.
* Ich erhalte critical warnings.
* Entweder ich habe etwas einfaches übersehen, oder man kann die  nicht 
einfach so verbinden wie man will.

von Christian R. (supachris)


Lesenswert?

mehrrerer schrieb:
> Ja genau nur dieses mal geht es nicht so einfach denke ich.
> * Ich erhalte critical warnings.

Du stellst im Core ein, welche Lanes des/der Quad(s) er nutzen soll. Und 
im ucf musst du gar nix extra angeben, denn das ist dann festgelegt. Die 
MGT Pins sind ja dediziert, und da kann man quasi nicht abweichen. Im 
anderen Thread schrieb einer, man könne die 4 Lanes innerhalb eines Quad 
noch vertauschen, aber das hab ich nicht probiert. Ich nutze den 
7-Series Transceiver wizzard, und da lege ich die Lanes fest, und die 
sind dann so. UCF wird vom core geliefert.

von mehrrerer (Gast)


Lesenswert?

Christian R. schrieb:
> Du stellst im Core ein, welche Lanes des/der Quad(s) er nutzen soll.

* ich muss den Schaltplan noch mal genau checken
* Aber wenn da n und p und alle Nummerierungen durcheinander sind, 
bringt das vlt. nicht mal was wenn ich die lanes abändere.
Ansonsten:
* xaui ip core hat die Option zum lanes wählen
* 7 series fpgas transceivers wizard schaue mich mir gerade an

Blicke da noch nicht ganz durch.
1
//PHY   //A7  //MGT  // Soll?
2
TX0_3_N  B11  RXP0  R3N
3
TX0_0_P  D14  RXP1  R0P
4
TX0_1_P  B13  RXP2  R1P
5
TX0_2_P  D12  RXP3  R2P
6
7
//PHY   //A7  //MGT  // Soll?
8
RX0_3_P  B7  TXP0  R3N
9
RX0_2_N  D8  TXP1  R0P
10
RX0_0_P  B9  TXP2  R1P
11
RX0_1_N  D10  TXP3  R2P
12
13
//PHY   //A7  //MGT  // Soll?
14
TX0_3_P  A11  RXN0  R3P
15
TX0_0_N  C14  RXN1  R0N
16
TX0_1_N  A13  RXN2  R1N
17
TX0_2_N  C12  RXN3  R2N
18
19
//PHY   //A7  //MGT  // Soll?
20
RX0_3_N  A7  TXN0  T3N
21
RX0_2_P  C8  TXN1  T2P
22
RX0_0_N  A9  TXN2  T0N
23
RX0_1_P  C10  TXN3  T1P

von Christian R. (supachris)


Lesenswert?

Schau mal ins Dokument UG482 rein, da ist in Appendix A das Placement 
dargestellt. Es gibt nur genau diese eine Zuordnung der FPGA Balls zu 
den Transceivern, da kann man nix ändern. "oberhalb" der Transceiver 
kann man dann sicher viel swappen, aber das ist je nach Core mehr oder 
weniger aufwendig. Bei lane bonding hat man da sicher weniger Spielraum 
als bei 16 unabhängigen lanes.

von mehrrerer (Gast)


Lesenswert?

Also ich muss das wirklich noch mal in Ruhe anschauen!
Vielleicht kann man doch einfach nur die lanes tauschen.
Glaube nur P und N müssen manchmal gedreht werden.

# Mist habe die Tabelle da oben zu schnell kopiert und original daten 
überschrieben!

von mehrrerer (Gast)


Lesenswert?

Also um nur ein Beispiel zu nehmen:
TX0_3_N/P geht zu RXP0/N0

Wenn ich jetzt die lanes tausche ist die zahl zwar korrekt aber P und N 
bleiben verkehrt.

Also

TX0_3_N/P würde ich dann an RX3P/N legen können.
Sollte aber eigentlich an RX3N/P.

Muss mir das wie du sagst noch mal genau anschauen in den 
Wizwardbeschreibungen!

von mehrrerer (Gast)


Angehängte Dateien:

Lesenswert?

OK.

Dann muss ich mal schauen, ob es da irgendeine Möglichkeit gibt die 
Transceiver-Verbindung zu ändern...

1. Schritt: Transceiver Dokumentation
2. Design analysieren
3. Ändern
4. Testen

Das muss doch ein altbekanntes Thema sein oder?
Jeder möchte doch etwas mit transceivern senden.
Dann muss das doch lösbar sein xD

von Christian R. (supachris)


Lesenswert?

mehrrerer schrieb:
> Das muss doch ein altbekanntes Thema sein oder?
> Jeder möchte doch etwas mit transceivern senden.
> Dann muss das doch lösbar sein xD

Naja, die meisten lesen die Doku und die Board Design Guidelines usw. 
bevor sie die Platine machen. Klappt natürlich nicht immer, aber in 
der Regel hat sich das bewährt

von mehrerer (Gast)


Lesenswert?

Christian R. schrieb:
> mehrrerer schrieb:
>> Das muss doch ein altbekanntes Thema sein oder?
>> Jeder möchte doch etwas mit transceivern senden.
>> Dann muss das doch lösbar sein xD
>
> Naja, die meisten lesen die Doku und die Board Design Guidelines usw.
> bevor sie die Platine machen. Klappt natürlich nicht immer, aber in
> der Regel hat sich das bewährt

Muss das wohl FPGA-Seitig lösen...

Interessant:
Habe das gerade gesehen in pg168:

Active-High signal to invert the polarity of the transmitter output.
Active-High signal inverts the polarity of the receive data signal.

von mehrerer (Gast)


Lesenswert?

TX/RX POLARITY wäre zu testen.

Müsste mal schauen ob es für den XAUI wichtig ist, ob PHY T1 zu XAUI T1 
usw. geht.

Einfach mal in der Simulation testen/ Norm lesen.

von mehrerer (Gast)


Angehängte Dateien:

Lesenswert?

Kann man diese Signale, die vom xaui zu den gtps gehen einfach abändern?

von tja (Gast)


Lesenswert?

leider nicht zwingend. Ich geh mal davon aus, dass im Transceiver für 
XAUI u.U. spezielle Features für Channel Alignment etc. genutzt werden. 
Da kann es durchaus sein, dass die Code-Wörter nicht auf allen Lanes 
gleich sind. Wenn das in den Transceivern selber ausgewertet wird dann 
macht es sehr wohl einen Unterschied, ob du die Lanes vertauscht hast.

Generell kannst du es aber mal versuchen.

P und N kannst du in der Tag über das Polarity leicht vertauschen und 
funktioniert auch. Das ist gängige Praxis um das Layout besser zu 
machen.

Wie sieht der Rest deiner Hardware aus? Passt dein Reference Clock? Habt 
ihr ein Auge auf die Spannungsversorgung geworfen?

Bei Transceiver kann sich schnell ein Fehler einschleichen, so dass dann 
gar nichts mehr funktioniert ...

von mehrerer (Gast)


Lesenswert?

tja schrieb:
> Da kann es durchaus sein, dass die Code-Wörter nicht auf allen Lanes
> gleich sind. Wenn das in den Transceivern selber ausgewertet wird dann
> macht es sehr wohl einen Unterschied, ob du die Lanes vertauscht hast.

* ja dafür muss ich mir den Core anschauen und nachvollziehen. Der 
beinhaltet den kodierten XAUI und die Wrapper um die Transceiver.

* XAUI-Core sendet dabei (denke ich) seine XAUI-Lanes über einen 64-Bit 
Vektor.
Ein Versuch wäre es, diesen Vektor in seiner Reihenfolge zu ändern.

* denke ich muss nachvollziehen wie man normalerweise mit den 
Transceivern arbeitet.
 * ->Wie generell Input und Output verbinden
 * -> welche Signale/ Handshakes sind notwendig



tja schrieb:
> Generell kannst du es aber mal versuchen.
Ja hoffe, dass ich ein paar Daten -und  Steuer Signale identifizieren 
kann und dann neu verbinden kann.

tja schrieb:
> P und N kannst du in der Tag über das Polarity leicht vertauschen und
> funktioniert auch. Das ist gängige Praxis um das Layout besser zu
> machen.

Wenn ich das schon so leicht gefunden habe, muss das andere auch so 
leicht sein.

tja schrieb:
> Wie sieht der Rest deiner Hardware aus? Passt dein Reference Clock? Habt
> ihr ein Auge auf die Spannungsversorgung geworfen?

### Rest Hardware
 - A7 200t, will nur Daten über meinen XAUI an meinen PHY senden^^
 - vielleicht auch einen anderen XAUI core nehmen.. oder Testdaten 
anders generieren xD

### Spannungsversorgung
 - FPGA-Designs auf dem Board liefen stabil

### Reference Clock
 - Referenz Clock dclk 50 MHz für die Transceiver und ist unabhängig von 
den 156,25 MHz

Vielen Dank für deine Tipps!
:D

von mehrerer (Gast)


Angehängte Dateien:

Lesenswert?

Habe eine interessante Stelle gefunden. Habe die Datei auch im Anhang...


xaui_0_block.vhd

Was denkt ihr darüber?

Kann ich etwa damit schon die gewünschte Änderung herbauführen.

Und dann noch "mgt_txcharisk" korrekt legen
1
  mgt_txdata_reord(0*16+15 downto 0*16) <= mgt_txdata(15 downto 0);
2
  mgt_txdata_reord(1*16+15 downto 1*16) <= mgt_txdata(31 downto 16);
3
  mgt_txdata_reord(2*16+15 downto 2*16) <= mgt_txdata(47 downto 32);
4
  mgt_txdata_reord(3*16+15 downto 3*16) <= mgt_txdata(63 downto 48);
5
6
  mgt_txcharisk_reord(0*2+1 downto 0*2) <= mgt_txcharisk(1 downto 0);
7
  mgt_txcharisk_reord(1*2+1 downto 1*2) <= mgt_txcharisk(3 downto 2);
8
  mgt_txcharisk_reord(2*2+1 downto 2*2) <= mgt_txcharisk(5 downto 4);
9
  mgt_txcharisk_reord(3*2+1 downto 3*2) <= mgt_txcharisk(7 downto 6);

von mehrerer (Gast)


Lesenswert?

oh ich muss dafür die *.xci Datei beschreibbar machen...

Habe dazu das hier gefunden:

https://support.xilinx.com/s/article/57546?language=en_US

keine Ahnung, ob das so einfach geht...

von mehrerer (Gast)


Lesenswert?

ok.. habe die Datei dann mit gedit geöffnet und editiert geschlossen und 
reset und launch_run <ip_name>_synth_1 ausgeführt...
mal schauen ...

von meherere (Gast)


Angehängte Dateien:

Lesenswert?

Hmm,
 (ich weiß nicht ob ich einen neuen Thread eröffnen soll für weiteres)

Also ich habe mir noch mal die fest-verdrahtete Konfiguration angeschaut 
und überlegt, ob ich wenigsten einen XAUI-> PHY -> PC Sende-Test 
hinbekomme.

Dafür würde ich mich nur auf die XAUI-TX lanes konzentrieren...

Vielleicht klappt das.

Zuerst habe ich die lanes alle so angeordnet, dass XAUI TXn (OUT) mit 
PHY RXn (IN) verbunden ist.
1
Ich verbinde XAUI Core-Lane0 mit GT Channel2, da GT Channel2 fest mit Lane 0 von RX n/p meines PHY verbunden ist
2
3
Ich verbinde XAUI Core-Lane1 mit GT Channel3, da GT Channel3 fest mit Lane1 von RX n/p meines PHY verbunden ist
4
5
Ich verbinde XAUI Core-Lane2 mit GT Channel1, weil GT Channel1 fest mit Lane2 von RX n/p meines PHY verdrahtet ist
6
7
Ich verbinde XAUI Core-Lane3 mit GT Channel0, da GT Channel0 fest mit Lane3 von RX n/p meines PHY verbunden ist

Dann habe ich mir angeschaut welche Polaritäten vertauscht sind und habe 
die entsprechenden polarities geändert.

Hier tausche ich rx ( auch wenn ich es gerade nicht testen will)
1
-- Polarity----------------------------------Polarity
2
3
  gt0_rxpolarity_in       => '1',
4
5
  gt0_txpolarity_in       => '0',
6
7
Hier habe ich gesehen, dass ich TX tauschen muss
8
9
-- Polarity-------------------------
10
11
gt1_rxpolarity_in       => '0',
12
13
gt1_txpolarity_in       => '1',
14
15
GT2 kann so bleiben
16
17
-- Polarity-------------------------------------------Polarity
18
19
  gt2_rxpolarity_in       => '0',
20
21
  gt2_txpolarity_in       => '0',
22
23
Hier habe ich gesehen, dass ich TX tauschen muss
24
25
-- Polarity-------------------------------------------------Polarity
26
27
  gt3_rxpolarity_in       => '0',
28
29
  gt3_txpolarity_in       => '1',

jetzt ist mein Status-vektor und mein debug-vektor noch nicht so wie er 
sein sollte!

Möglicherweise etwas mit den TX Einheiten.

>status_vector= 0xfd = 0b1111 1101

Der sollte eigentlich
den Wert =  0xfc = 0b1111 1100 haben!
TX Local fault ist hierbei das LSB!


>debug = 0x3e = 0b 11 1110

der sollte eigentlich 0x3f = 0b11 1111 sein!

"Indicates when the TX phase alignment of the transceiver has been 
completed"

Im einfachsten Fall habe ich einfach die dclk= 50 MHz falsch verbunden.

Ich habe einen Frame-Sender der ein Ethernet-Frame senden soll.
Aber es kommt nichts am PC an.
Ich schaue mir das per wireshark an...

Aus irgendeinem Grund scheinen auf Rx manchaml Daten zu kommen, Daten 
versuche zu senden und dabei einen PHY loopback drinne habe.


Generell wird empfohlen XAUI loopback mit sich selber zu machen um zu 
schauen, ob er sich richtig initialisiert.

Habe dclk von einem anderen FPGA und wandle dann diese ca. 100 MHz in 50 
MHz. um. Allgemien erscheinen dadurch zeitkritische Fehler.
DCLK muss aber nicht zwingend 50 MHz sein.
Könnte die 100 MHz auch quasi "direkt" verwenden.
Werde das mal testen...

von mehrerer (Gast)


Lesenswert?

habe gerade reset manuell mit dem vio core ein reset im betrieb 
durchgeführt.. jetzt ist der status vector  korrekt und der debug vektor 
auch. also so wie in der simulation.

Es blinkt jetzt zwar die LED an der Netzwerkkarte aber ich kann keine 
meiner generierten Daten sehen.
Es geht aus wireshark nicht wirklich hervor, dass es meine generierten 
Daten sind. Eher sowas wie eine Reaktion darauf, dass der fpga etwas 
sendet.

Ich muss ggfs. die GTP Transceiver richtig resetten. Aber es steht nur 
sehr vage wie das gehen soll.

von mehrerer (Gast)


Lesenswert?

Ich habe mal einen meiner Prototypen an einen anderen angeschlossen.
Der eine hatte eine "gute" TX konfiguration, der andere eine gute RX- 
Konfiguration.

Zumindest denke ich, dass ich die lanes entsprechend gut gelegt habe.

Ich sehe jetzt sogar, dass da was ankommt.
Aber es gibt sehr viele Fehler daszwischen!
Als ob die lanes vertauscht wären.
Aber das kann nicht sein.
Ich habe doch darauf geachtet, dass bei dem einen Design korrekt für TX 
zu machen und bei dem anderen korrekt für RX.

...

Mein PC reagiert nur instant mit der LED an der Netzwerkkarte.
Aber es werden keine Daten erkannt.

Der MAC verwirft das wohl.

Ich habe nämlich auch bei meinem RX Prototyp gesehen, dass meine MAC die 
Daten nicht hinten wieder ausgibt!

So verhält sich wohl auch meine Netzwerkkarte.
Die sieht zwar was, kann aber nichts damit anfangen...

von Duke Scarring (Gast)


Lesenswert?

mehrerer schrieb:
> Mein PC reagiert nur instant mit der LED an der Netzwerkkarte.
> Aber es werden keine Daten erkannt.
>
> Der MAC verwirft das wohl.

Dann versuch doch mal den umgekehrten Weg: Sende permanent Pakete mit 
bekanntem Inhalt. Auf der Gegenseite kannst Du dann alles an debugging 
machen, was Dir zur Verfügung steht: Oszilloskop, Logicanalyzer, 
Chipscope, ...

Duke

von mehrerer (Gast)


Angehängte Dateien:

Lesenswert?

habe schon versucht was über den Ethernet Port an meinen Prototypen zu 
senden.
Mit Mausezahn.

 Habe da letztes mal noch nicht so viel erkannt.
Muss ich noch mal testen - weiß nicht genau was ich da als test senden 
sollte.


Aber prototyp1 -> prototyp2 teste ich gerade wieder!
Es sieht gar nicht soo schlecht aus.

Obwohl ich gerade alle RX Kombinationen durchteste erhalte ich immer ein 
paar richtige Werte.


Allerdings sollte es ein anderes Format haben:
0000535400005556

aber es sollte so sein:
0053005400550056

Habe im Anhang noch mal ein Bild von meinem Versuchsaufbau ....


Habe noch keinen "rxnotintable" Fehler gesehen bis her.
Deswegen liegt es vielleicht nur an der Lane-order.

von mehrrer (Gast)


Lesenswert?

bei der Kombiantion RX ( einstellbar im XAUI wizard)
sah es schon leicht besser aus.
Aber noch nicht perfekt.
1
1
2
0
3
2
4
3
Ich glaube es gibt 16 Möglichkeiten wie ich den XAUI wizard einstellen 
kann für meinen RX Prototypen...

Das ist echt anstrengend ich muss immer wieder ein neues Bitfile in 
Vivado erstellen, um das zu testen!

von meerhrerer (Gast)


Lesenswert?

chipskope?


also ich verwende ILA und VIO
...
ILA ist sehr wichtig, da ich damit xgmii anschaue..
und eben xgmii sollte anders aussehen.
Nämlich so wie beim Senden.
Also wie oben beschrieben..
leider stimmt die Reihenfolge nicht.
Habe jetzt schon 8 Kombinationen durch.

von mehererer (Gast)


Lesenswert?

gut habe jetzt mindestens 24 Mal die Konfiguration umgestellt und davon 
ein Bitfile generiert um es zu testen.
Immer was irgendwas falsch mit der Reihenfolge oder es gab 
Invertierungen.

Obwohl ich immer wieder den Schaltplan prüfe..

Wie soll man die GTP Reihenfolge bloß debuggen!?

von mehererer (Gast)


Lesenswert?

werde jetzt mal schauen, ob ich während der Laufzeit die polarites 
ändern kann, damit ich wenigstens ein bisschen schneller debuggen 
kann...
Weil es erscheinen momentan einige inverse Zeichen....

von mehererer (Gast)


Lesenswert?

haha das scheint ja echt zu gehen,
einfach ein vector wo ich die bits ändern kann xD

also aktuell sieht mein versuchsaufbau so aus:

device1 mit TX GTP -> device2 mit RXGTP wo ich mit dem wizard die lanes 
tauschen muss aber jetzt wenigstens die polarities im Betrieb ändern 
kann .

von Christian R. (supachris)


Lesenswert?

mehererer schrieb:
> gut habe jetzt mindestens 24 Mal die Konfiguration umgestellt und
> davon
> ein Bitfile generiert um es zu testen.
> Immer was irgendwas falsch mit der Reihenfolge oder es gab
> Invertierungen.
>
> Obwohl ich immer wieder den Schaltplan prüfe..
>
> Wie soll man die GTP Reihenfolge bloß debuggen!?

Sowas kenne ich beim Artix MGT wenn der Reset nicht lang genug und/oder 
nicht wie gewünscht synchron ist. Beim MGT Startup und Reset hat man 
beim Artix insbesondere viel Spaß durch den Silicon bug. Außerdem 
sollte/muss man immer noch nach dem Startup eine Weile warten, bis man 
anfängt die MGT zu starten, das hängt bissl vom Board ab, vom REF_CLK 
und allen möglichen anderen Dingen...

von mehererer (Gast)


Lesenswert?

Was für ein Silikon Bug?

Konnte jetzt durch VIO-Togglen der polarity-order der RX lanes der GTP 
transceiver, die bei der XAUI-Entity ausgeführt sind die getoggelten 
Zeichen klar machen.
Durch eine weitere Umstellung im XAUI lane Wizard habe ich dann gestern 
die Richtige lesbare Reihenfolge an Daten, die ich mit meinem anderen 
Gerät gesendet habe empfangen!

Mein MAC übersetzt das empfangene noch nicht.
Währe natürlich vollständigkeitshalber schön.

Werde mal meine Testbench bemühen.
Oder/ Und am Ende wieder VIO verwenden um den Ethernettyp live zu ändern 
xD.

Kontne außerdem auch mal mit dem Programm 
https://man7.org/linux/man-pages/man8/mausezahn.8.html etwas an mein 
device senden.
Allerdings konnte ich noch nichts an meinen PC senden.

Eigentlich müsste man doch wenigstens Rohdaten sehen können ...
Habe es noch mit keinem Programm geschafft..

von Duke Scarring (Gast)


Lesenswert?

mehererer schrieb:
> Eigentlich müsste man doch wenigstens Rohdaten sehen können ...
> Habe es noch mit keinem Programm geschafft..

Wireshark + Administratorrechte + Promiscous mode + alle Checksum 
Offloadings ausschalten (Einstellungen Netzwerkkarte)

Sonst bekommst du nur ausgewählte Netzwerkpakete präsentiert.

Duke

von Christian R. (supachris)


Lesenswert?


Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.