Forum: FPGA, VHDL & Co. PINOUT Assignments für Altera UP3 Board


von Martin S. (sirnails)


Lesenswert?

Hallo miteinander,

bisher hatte ich eigentlich mit Quartus 8 studienbegleitend gearbeitet. 
Ich habe mir inzwischen ein UP3 Board mit Altera Cyclone I zugelegt, um 
ein bisschen experimentieren zu können. Nach einer Woche Suchen, und 
Probieren läuft der ByteBlaster II inzwischen.

Was mir jetzt allerdings noch fehlt, ist die IO-Definition für das 
Board. Für das Cyclone II - EDU Board habe ich die def.

Hat einer von euch die zufällig auf dem Rechner herum liegen? Das Format 
entspricht in etwa dem folgenden:
1
To,Location
2
CLOCK_27[0],PIN_D12
3
CLOCK_27[1],PIN_E12
4
CLOCK_24[0],PIN_B12
5
CLOCK_24[1],PIN_A12
6
CLOCK_50,PIN_L1
7
EXT_CLOCK,PIN_M21
8
KEY[0],PIN_R22
9
KEY[1],PIN_R21
10
KEY[2],PIN_T22
11
KEY[3],PIN_T21
12
SW[0],PIN_L22
13
SW[1],PIN_L21
14
...

Die komplette "DE1_Pin_Assignments_minimumIO" umzuschreiben, wäre bei 
knapp 200 Einträgen ne Menge Arbeit.

Kann mir außerdem jemand erklären, was der Buchstabe vor der PIN-Nummer 
zu bedeuten hat? Im Datenblatt zum Board stehen diese Kürzel nicht 
drinnen.

Danke,

M. Schwaikert

von Lattice User (Gast)


Lesenswert?

Martin Schwaikert schrieb:
> Kann mir außerdem jemand erklären, was der Buchstabe vor der PIN-Nummer
> zu bedeuten hat? Im Datenblatt zum Board stehen diese Kürzel nicht
> drinnen.

Pins(d.h. eigentlich Balls) bei BGAs werden mit Zeile Spalte bezeichnet:
L21 : Zeile L, Spalte 21

von Martin S. (sirnails)


Lesenswert?

Lattice User schrieb:
> Martin Schwaikert schrieb:
>> Kann mir außerdem jemand erklären, was der Buchstabe vor der PIN-Nummer
>> zu bedeuten hat? Im Datenblatt zum Board stehen diese Kürzel nicht
>> drinnen.
>
> Pins(d.h. eigentlich Balls) bei BGAs werden mit Zeile Spalte bezeichnet:
> L21 : Zeile L, Spalte 21

Ach das macht natürlich Sinn. Aber das hilft mir jetzt leider trotzdem 
nicht weiter :-(

von Martin S. (sirnails)


Lesenswert?

Also falls es jemand brauchen sollte, ist hier mal Teil1. Es fehlt noch 
der Flash, SD-RAM und die Stiftleisten.

Grüße M. Schwaikert
1
To,Location
2
EXT_CLOCK,38
3
KEY[0],48
4
KEY[1],49
5
KEY[2],57
6
KEY[3],62
7
SW[0],58
8
SW[1],59
9
SW[2],60
10
SW[3],61
11
LEDR[0],56
12
LEDR[1],55
13
LEDR[2],54
14
LEDR[3],53
15
LCD_E,50
16
LCD_RW,73
17
LCD_RS,108
18
LCD_DATA[0],94
19
LCD_DATA[1],96
20
LCD_DATA[2],98
21
LCD_DATA[3],100
22
LCD_DATA[4],102
23
LCD_DATA[5],104
24
LCD_DATA[6],106
25
LCD_DATA[7],113
26
CLOCK,153
27
VGA_RED,228
28
VGA_GREEN,122
29
VGA_BLUE,170
30
VGA_VSYNC,226
31
VGA_HSYNC,227
32
CON1_C0,8
33
CON1_D0,6
34
CON1_D1,1
35
CON1_D2,5
36
CON1_D3,3
37
CON1_D4,240
38
CON1_D5,238
39
CON1_D6,237
40
CON1_D7,239
41
CON1_S6,236
42
CON1_S7,235
43
CON1_S5,234
44
CON1_S4,233
45
CON1_C1,7
46
CON1_S3,2
47
CON1_C3,4
48
PS2_DATA,13
49
PS2_CLK,12
50
PHY_OE,16
51
PHY_RCV,17
52
PHY_VP,18
53
PHY_VM,19
54
PHY_VPO,15
55
PHY_CMO_FSEO,14
56
RTC_SDA,121
57
RTC_SCL,120
58
I2C_SDA,21
59
I2C_SCL,20
60
SER_DCD,39
61
SER_RX,42
62
SER_TX,47
63
SER_DTR,46
64
SER_DSR,41
65
SER_RTS,45
66
SER_CTS,43
67
SER_RI,44
68
IDE_D[0],214
69
IDE_D[1],213
70
IDE_D[2],208
71
IDE_D[3],207
72
IDE_D[4],206
73
IDE_D[5],215
74
IDE_D[6],216
75
IDE_D[7],217
76
IDE_D[8],220
77
IDE_D[9],219
78
IDE_D[10],218
79
IDE_D[11],221
80
IDE_D[12],222
81
IDE_D[13],223
82
IDE_D[14],224
83
IDE_D[15],225
84
IDE_DMARQ,199
85
IDE_WE,200
86
IDE_OE,201
87
IDE_IORDY,202
88
IDE_DMACK,203
89
IDE_INTRQ,204
90
IDE_A[0],205
91
IDE_A[1],176
92
IDE_A[2],178
93
IDE_CS0,174
94
IDE_DASP,173
95
IDE_CSI,124
96
IDE_CSEL,196

von Lattice User (Gast)


Lesenswert?

Das könnte einiges ganz nützlich sein:

http://www.slscorp.com/UP3Support/pages/documents.php

von M. Schwaikert (Gast)


Lesenswert?

Hallo miteinander,

jetzt habe ich es mal geschafft, soweit die Assignments zu laden. Wenn 
Ich jetzt allerdings ein kleines Testprojekt (Einfach vier Schalter die 
mit Funktionsloser Logik auf LEDs laufen) kompiliere, dann meldet der 
Fitter:

Error: Can't place node "LEDR[3]" -- illegal location assignment 53
Error: Can't place node "LEDR[2]" -- illegal location assignment 54
Error: Can't place node "LEDR[1]" -- illegal location assignment 55
Error: Can't place node "LEDR[0]" -- illegal location assignment 56
Error: Can't place node "KEY[3]" -- illegal location assignment 62
Error: Can't place node "KEY[2]" -- illegal location assignment 57
Error: Can't place node "KEY[1]" -- illegal location assignment 49
Error: Can't place node "KEY[0]" -- illegal location assignment 48

Kann mir einer sagen, was das zu bedeuten hat?

Vielen Dank.

von M. Schwaikert (Gast)


Lesenswert?

Oh Mann... Also manchmal ist Quartus wirklich eine Krankheit. Obwohl ich 
explizit den Chip angegeben habe, hat er Auto-detect device aktiviert, 
aber irgendeinen Schmarrn erkannt. Somit hat der Fitter einen Konflikt 
mit den Pins festgestellt, weil der ausgewählte Chip keine 250 Leitungen 
besitzt.

So kanns gehen :-/

von Klaus (Gast)


Lesenswert?

M. Schwaikert schrieb:
> Oh Mann... Also manchmal ist Quartus wirklich eine Krankheit. Obwohl ich
> explizit den Chip angegeben habe, hat er Auto-detect device aktiviert,
> aber irgendeinen Schmarrn erkannt. Somit hat der Fitter einen Konflikt
> mit den Pins festgestellt, weil der ausgewählte Chip keine 250 Leitungen
> besitzt.
>
> So kanns gehen :-/

Aber schön, dass du ne Rückmeldung über die Lösung des Problems gibt! 
:-)

Da können sich viele noch nen Beispiel nehmen.

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.