IDE-Schnittstelle 2

to stream or not to stream
Digidoc29
Neugieriger
Neugieriger
Beiträge: 7
Registriert: Mittwoch 25. Januar 2006, 07:17

Beitrag von Digidoc29 »

So ich habe mir die Leiterplatte für meine Nokia gebaut...nur es fehlen mir die hindergründe und Daten wie Firmware für den Xilinx und konfig der Dbox.kann mir da jemand helfen??

Grüße
Digi
gurgel
Tuxboxer
Tuxboxer
Beiträge: 2473
Registriert: Dienstag 8. Oktober 2002, 21:06

Beitrag von gurgel »

wo hast du denn den Stecker her?
Test
DBoxBaer
Senior Member
Beiträge: 255
Registriert: Donnerstag 25. August 2005, 11:34

Beitrag von DBoxBaer »

Digidoc29 hat geschrieben:So ich habe mir die Leiterplatte für meine Nokia gebaut...nur es fehlen mir die hindergründe und Daten wie Firmware für den Xilinx und konfig der Dbox.kann mir da jemand helfen??

Grüße
Digi
Ich bin noch am Chip dran, habe aber heute gute Fortschritte gemacht und
bin zuversichtlich, das der neue Ansatz funktionieren wird. Die Implementierung ist nun reines VHDL Source, das hat am meisten Zeit gekostet, sich da reinzudenken. Wird aber auch das Posten vereinfachen...
Ob es "schönes" VHDL ist weiss ich aber nicht.
Und eine .UCF Datei (auch reiner Text) braucht man noch, wo die Pinbelegung drin steht. Für mein Nokia Layout liefere ich die natürlich
auch.

Bevor ich aber was reales verschicke sollte jeder, der das selbst nachbauen will, erstmal diese Fragen beantworten:

Kannst Du selbst ein Image erstellen?
Hast Du die Xilinx Software installiert?
Welche Version? (Aktuell ist wohl 8.1.x)
Hast Du ein Download-Kabel, um den CPLD zu programmieren?

Letzteres wird wohl auch mal übers Modem klappen, aber das sollte dann
jemand anders angehen: Dafür reicht mir die Zeit einfach nicht, und ich habe ja ein Kabel :-)

DboxBaer
... und der Rest ist dann Software (TM)
Digidoc29
Neugieriger
Neugieriger
Beiträge: 7
Registriert: Mittwoch 25. Januar 2006, 07:17

Beitrag von Digidoc29 »

Kannst Du selbst ein Image erstellen?
Hast Du die Xilinx Software installiert?
Welche Version? (Aktuell ist wohl 8.1.x)
Hast Du ein Download-Kabel, um den CPLD zu programmieren?

Jep...8.1 ist installiert
Kabel bin ich gerade am basteln...(Parallel Port)
Image Backen...bekomme ich auch noch hin..

Sonst bin ich für alle schandtaten bereit.
DBoxBaer
Senior Member
Beiträge: 255
Registriert: Donnerstag 25. August 2005, 11:34

Beitrag von DBoxBaer »

Digidoc29 hat geschrieben:
Kannst Du selbst ein Image erstellen?
Hast Du die Xilinx Software installiert?
Welche Version? (Aktuell ist wohl 8.1.x)
Hast Du ein Download-Kabel, um den CPLD zu programmieren?

Jep...8.1 ist installiert
Kabel bin ich gerade am basteln...(Parallel Port)
Image Backen...bekomme ich auch noch hin..

Sonst bin ich für alle schandtaten bereit.
Na dann:
Um Dein Kabel zu testen kannst Du erstmal 3,3V an die Platine
anschliessen und sehen ob die Xilinx Software ("Impact")
das Ding "findet". (Unter Linux klappt das nach etwas googlen
wegen den ParPort-Treibern auch)
Ein Blank-Test zum Beispiel sollte dann erfolgreich funktionieren.

Im Prinzip sollte es dann auch kein Problem sein, den CPLD so in
die Box zu stecken: Da beim leeren Chip alle Pins hochohmig sind,
stört das die CPU in keiner Weise.
(Wenn doch hast Du ein Problem beim Löten oder mit dem Chip,
hoffentlich nicht mit der CPU...)

Um das Board danach mechanisch gut zu befestigen würde ich dann
empfehlen noch ein Flachbankabel an die Platine zu löten: Dann
muss man die Platine nicht mehr ausbauen und belastet den
Stecker auch nicht mehr:
Ich habe an das Kabel jetzt immer Test, PD1-4, PC1-4, GSR, TS3
und die JTAG Pins angeschlossen. Oder nimm einfach alle wenn
das passt.
An PE1-4 habe ich meistens LEDs dran zum schnellen Debuggen.
(Über nen R nach 3.3V, der CPLD liefert sozusagen die Masse)

Dann kann man die Platine fest montieren, das ist der blödeste
Teil, weil ich das beim Layout nicht bedacht habe...

Ciao,

DboxBaer
... und der Rest ist dann Software (TM)
chkbox
Erleuchteter
Erleuchteter
Beiträge: 440
Registriert: Samstag 10. April 2004, 15:17

Beitrag von chkbox »

So ich bin jetzt auch fertig (hoffe ich :D )

Es wäre nett, wenn ein paar Leute mal das PDF (http://rapidshare.de/files/13187662/ide.zip.html) ausdrucken (Größenanpassung ausschalten, ist denke ich richtig skaliert), ausschneiden und testen, obs passt (auch an den Seiten mit den Bauteilen). Ist halt etwas knapp und es scheint ja mehrere Ausführungen zu geben. Wer weiß, was für Gemeinheiten die sich ausgedacht haben...
PT-1
Moderator english
Beiträge: 2458
Registriert: Donnerstag 20. Dezember 2001, 00:00

Beitrag von PT-1 »

PT-1
Moderator english
Beiträge: 2458
Registriert: Donnerstag 20. Dezember 2001, 00:00

Beitrag von PT-1 »

Digidoc29 hat geschrieben:So ich habe mir die Leiterplatte für meine Nokia gebaut...nur es fehlen mir die hindergründe und Daten wie Firmware für den Xilinx und konfig der Dbox.kann mir da jemand helfen??

Grüße
Digi
Koenntest du dein Layout auch mal posten oder ist das hier irgendwo in diesem 17 Seiten Post ?

PT-1
tetzlav
Einsteiger
Einsteiger
Beiträge: 131
Registriert: Dienstag 6. April 2004, 12:08

Beitrag von tetzlav »

PT-1 hat geschrieben:
Digidoc29 hat geschrieben:So ich habe mir die Leiterplatte für meine Nokia gebaut...
Koenntest du dein Layout auch mal posten oder ist das hier irgendwo in diesem 17 Seiten Post ?
...wird sich bestimmt nicht sehr von dem hier unterscheiden. ;)

Gruß
tetzlav
Digidoc29
Neugieriger
Neugieriger
Beiträge: 7
Registriert: Mittwoch 25. Januar 2006, 07:17

Beitrag von Digidoc29 »

jep genau diese ist es..
brucew
Interessierter
Interessierter
Beiträge: 65
Registriert: Mittwoch 1. Februar 2006, 12:40

Beitrag von brucew »

Langsam stagniert hier wohl das Posting!

Ich hätte gerne mal gewußt wie denn jetzt eigentlich die Chancen stehen

eine fix und fertige Platine für Nokia zu erwerben?


Gruss

Bruce
Tommy
Tuxboxer
Tuxboxer
Beiträge: 4332
Registriert: Dienstag 7. Mai 2002, 17:04

Beitrag von Tommy »

Ich hoffe mal das Phaselinear die 3 Layouts schon "in der CAM" hat und damit demnächst zumindest kleinere Stückzahlen Platinen verfügbar sind. :gruebel:
---------------------------
Alle weiteren Infos findest Du im WIKI
Bitte vor dem posten Boardregeln lesen und verstehen!
Wie erstelle ich ein Bootlog? Wo finde ich die FAQ?
gurgel
Tuxboxer
Tuxboxer
Beiträge: 2473
Registriert: Dienstag 8. Oktober 2002, 21:06

Beitrag von gurgel »

:roll: :roll: :roll: :roll: :roll:
*Plonk*
Test
phaselinear
Interessierter
Interessierter
Beiträge: 21
Registriert: Donnerstag 24. Juni 2004, 19:49

Beitrag von phaselinear »

@ tommy

... die Layouts sind (bis auf Nokia) alle "Mechanisch" i.O.
ich warte aber noch auf eine Reaktion von Dboxbaer...
ob er 1. für die Sagem u. Philips Layouts sein OK. gibt und
2. ob er sein Nokia Layout nochmals mit den etwas grösseren toleranzen (0.20 mm) überarbeitet - oder nicht ....

d.h. es hängt zur zeit nicht an mir.... (oder doch) ?
... ausserdem werden die Platinen erst mal nur für eine Testserie Produziert , sodas Chkbox und Gurgel Ihr Layout überprüfen können ... falls die Leiterplatten dann erfolgreich laufen , und es keine Änderungen am Layout geben muss - erst dann können wir uns um eine grössere Serie gedanken machen...
zumal die Software Dev es dann den Kernel event. noch anpassen - d.h. die brauchen dann auch noch so eine "Platine" ...
also macht bitte mal keinen Stress - es ist keinem geholfen , wenn die "teile" nicht zu 99.9 % funktionieren....
ALSO ERST TESTEN und für GUT Befinden !!!

@ DBOXBaer, GURGEL u. CHKBOX - Bitte berichtigen wenn ich mich Irre !

Greetz
Phase....
Gorcon
Tuxboxer
Tuxboxer
Beiträge: 5873
Registriert: Samstag 23. Februar 2002, 22:46

Beitrag von Gorcon »

Hat sich das Problem mit den Nokia Steckern nun schon gelöst?

Wirds auch eine Platine geben für das Programmierkabel?

Gruß Gorcon
gurgel
Tuxboxer
Tuxboxer
Beiträge: 2473
Registriert: Dienstag 8. Oktober 2002, 21:06

Beitrag von gurgel »

die Stecker bestell ich, sobald die neuen Prototypen funktioneren.
Eine Adapterplatine zum programmieren werde ich auch noch entwerfen.
Test
DBoxBaer
Senior Member
Beiträge: 255
Registriert: Donnerstag 25. August 2005, 11:34

Beitrag von DBoxBaer »

phaselinear hat geschrieben:@ tommy

... die Layouts sind (bis auf Nokia) alle "Mechanisch" i.O.
ich warte aber noch auf eine Reaktion von Dboxbaer...
ob er 1. für die Sagem u. Philips Layouts sein OK. gibt und
2. ob er sein Nokia Layout nochmals mit den etwas grösseren toleranzen (0.20 mm) überarbeitet - oder nicht ....
...
Eigentlich bin ich gerade noch total unter Wasser, und versuche
trotzdem nebenbei den Chip auf Vordermann zu bringen.

Aber ein paar Kommentare kann ich mir schon leisten:
1. Wenn sich jemand findet, der die Nokia-Platine überarbeitet:
Bitte macht das, ich komme wirklich zur Zeit nicht dazu und es
fehlt mir auch an zwingenden Gründen, weil ich ja mit meinem
Layout erstmal leben kann/muss.
2. Mit gurgel bin ich schon ein paar Varianten durchgegangen, da gab
es noch ein paar Probleme, aber dazu kann wird er sich selbst
äussern.
3. Da ich eine Variante vom Chip habe, die im Prinzip funktioniert
hat, nur noch nicht "schön", verwende ich dieses Design, um die
anderen Board-Layouts zu prüfen. Wenn die Xilinx Software dann
das Design da nicht reinkriegt, habe ich evtl. später ein grosses
Problem. Der erste Entwurf von Gurgel ist hier leider durchgefallen.
Das Sagem-Layout habe ich noch nicht gecheckt.

Damit ich nicht viel Aufwand habe, benötige ich daher für einen
Test, ob der Chip auf dem Board funktionieren könnte, eine
.UCF Datei, die im Prinzip das Pinout festlegt. Das ist eine reine
ASCII Datei, die man evtl. auch mit einem Script aus dem Export
von Eagle generieren könnte, z.B. mit Perl oder so.
Wer das "mal eben" machen kann/will:

Von eagle bekommt man in etwa so etwas:

Pinlist

Exported from ide.brd at 15.02.2006 15:13:27

EAGLE Version 4.15 Copyright (c) 1988-2005 CadSoft

Part Pad Net

C1 1 VCC
2 GND

... snip snip snip ...

CPLD 1 VCC
10 D16
100 IDED4
101 IDED10
102 IDED5
103 IDED9
104 IDED6
105 IDED8
106 IDED7
107 IDERESET
108 GND
109 VCC
11 D28
110 PD1
111 PD3
112 PD0
...


die .ucf Datei sieht im Prinzip so aus:

NET "Addr<0>" LOC = "P120" ;
NET "Addr<1>" LOC = "P119" ;
NET "Addr<2>" LOC = "P118" ;
NET "Addr<3>" LOC = "P117" ;
NET "PD<0>" LOC = "P112" | SLEW = SLOW ;
NET "PD<1>" LOC = "P110" | SLEW = SLOW ;
NET "PD<2>" LOC = "P113" | SLEW = SLOW ;
NET "PD<3>" LOC = "P111" | SLEW = SLOW ;

usw.
Die Bedeutungen und die Form erklären sich wohl von selbst?

Wenn das Ding nach "NET" Name sortiert ist, kann man so Dinge
wie SLEW oder das die Namen sich zum Teil unterscheiden, ganz
leicht in nem Editor mit "Spalten-Markieren" anpassen (Diese Namen
ändern sich zur Endgültigen Version sowieso noch).
Nur hatte ich in einer Version von Gurgel diverse Pins doppelt,
usw: Das macht keinen Spass zu tippen/kontrollieren, denn der
CPLD hat 144 Pins, und mindestens drei verschiedene Boards!

Ciao,

DboxBaer
... und der Rest ist dann Software (TM)
gurgel
Tuxboxer
Tuxboxer
Beiträge: 2473
Registriert: Dienstag 8. Oktober 2002, 21:06

Beitrag von gurgel »

jo, das Nokialayout nehme ich mir auch noch mal vor. Aber braucht alles seine Zeit...
Heute Nacht hab ich die zweite Version meines Philipsboards fertiggestellt, trotz das ich hier noch nen haufen Boxen zu reparieren habe. Die haben jetzt erstmal Priorität.
Test
gurgel
Tuxboxer
Tuxboxer
Beiträge: 2473
Registriert: Dienstag 8. Oktober 2002, 21:06

Beitrag von gurgel »

hier mal ein Größenvergleich:

Bild
Test
petgun
Tuxboxer
Tuxboxer
Beiträge: 5001
Registriert: Montag 11. November 2002, 15:26

Beitrag von petgun »

:D der ist gut..
..da bin ich ja mal gespannt ob die Leute die meinen gute Augen inkl. Equipment und Loeterfahrung zu haben, jetzt immer noch genuegend Selbstbewusstsein haben, den Selbstbau zu wagen.
gurgel
Tuxboxer
Tuxboxer
Beiträge: 2473
Registriert: Dienstag 8. Oktober 2002, 21:06

Beitrag von gurgel »

:lol:
Test
SoLaLa
Tuxboxer
Tuxboxer
Beiträge: 6119
Registriert: Mittwoch 3. April 2002, 00:32

Beitrag von SoLaLa »

achwatt... erstmal draufbruzzeln und hinterher schönes Foto machen...
wenn das dann etwa so oder eben so aussieht, denn macht mans halt nochmal :wink:
DBoxBaer
Senior Member
Beiträge: 255
Registriert: Donnerstag 25. August 2005, 11:34

Beitrag von DBoxBaer »

gurgel hat geschrieben:die Stecker bestell ich, sobald die neuen Prototypen funktioneren.
Eine Adapterplatine zum programmieren werde ich auch noch entwerfen.
Sollen wir das über den PC machen, oder doch direkt von der DBox?
In dem Fall könnte sich ja mal jemand an so einen Source wagen:
Im Thread steht irgendwo welches PDF das ist, ein C-Beispiel kann
man von Xilinx runterladen, und ob das in einem speziellem U-Boot
oder aus Linux gemacht wird: Beides bestimmt hat Vor- und
Nachteile!

Ansonsten:
Ich habe eine Frage bekommen, ob es mich stört, wenn da jemand
Geld mit verdienen wird.

Ich beantworte die jetzt mal hier öffentlich:

Das habe ich mich schon in der ersten Minute gefragt, als ich
beschlossen habe, alles zu veröffentlichen, wenn es mal funktioniert.
Natürlich ist da ein Teil in mir, der sagt: Das war so viel Arbeit, da
solltest Du auch was für kriegen.
Aber:
1. Ich fand es schade, dass das erste IDE Projekt so wenig Infos
rausgegeben hat (Das soll keine Kritik sein!), und hätte es mir
anders gewünscht. Also muss ich es doch auch anders machen.
2. Wenn das jemand verkauft, haben "meine Lösung" ja viele
Leute! Also wird der eine oder andere daran vielleicht arbeiten und
was verbessern. Und das kommt mir zu gute. Also habe ich doch
sogar nen Vorteil davon, wenn das Ergebnis käuflich zu erwerben ist.
3. Die Möglichkeit, das selbst zu vertreiben hätte ich wahrscheinlich
auch. Nur habe ich schon einen Job und der macht mehr Spass.
Und ich weiss, ich würde mich über Kunden, die nicht zahlen, noch
viel mehr ärgern als an dem Verdienst bei anderen (Das nennt man
übrigens Neid und ist kein guter Wesenszug). Und über Steuern
die man nun auch noch dafür zahlen soll.
4. Der Vertrieb macht mir keinen Spass. Aber das ist auch viel
Arbeit. Also darf derjenige, der das macht, auch daran verdienen.
Zuviel wird das nicht sein, weil dann jemand anders es billiger
machen kann. Das ist doch super: Alle kopieren mein Design und
es wird auch noch so günstig angeboten, wie das real organsiert
werden kann.
5. Ich gehen so Problemen aus dem Weg. Wenn was nicht tut:
Garantie habe ich keine gegeben.
Wenn Firma X meint, das ihre Patente/Regeln sonstwas verletzt
werden? Ich habe keine Geheimnisse veröffentlicht (werde haben).

Ansonsten: die GPL erlaubt, das man damit Geld verdient. Sie verlangt
aber, das Änderungen ebenfalls unter der GPL stehen und veröffentlicht
werden. Das ist perfekt für dieses Projekt. Ob man das durchsetzen
kann? Wir werden sehen.

Ciao,

DboxBaer


PS:
Wenn allerdings jemand ein paar Kabel-Boxen übrig hat: meine Eltern
hätten gerne eine und durch das Rumbasteln daran sind meine beiden
auch nicht mehr normal nutzbar (im Moment, geschrottet habe ich
zum Glück noch keine...).
Und ich könnte ne FritzBox7170 gut gebrauchen :-)
... und der Rest ist dann Software (TM)
chkbox
Erleuchteter
Erleuchteter
Beiträge: 440
Registriert: Samstag 10. April 2004, 15:17

Beitrag von chkbox »

So habe mal kurz was für die UCF Datei geschrieben. Ist nur ein mieser Hack, aber es wandelt *.net Dateien in <gleicher Name>.ucf um. Vorsicht überschreibt!!!

Leider passen die Namen in Eagle kaum zu denen im UCF (Und ich steige auch noch nicht ganz durch, was was ist)

Code: Alles auswählen

for(<*.net>) {
	open(IN, $_);
	
	$_ =~ s/netlist$/ucf/i;
	open(OUT, "> $_");
	
	#skip header
	until(<IN> =~ /Change Class/) {}
	
	for(<IN>) {
		next if(/^[\r\n]/);
		next if(/^Change Class/); #junk???
		
		$_ =~ s/ +/ /g;
		
		if(/^[A-Z0-9]/) {
			#net change
			($netname, $part, $pad) = split(/ /, $_);
		} else {
			($foo, $part, $pad) = split(/ /, $_);
		}
		
		$netlist{$part}{$pad} = $netname;
	}
	
	close IN;
	
	$cpld = $netlist{"CPLD"};
	
	for(sort { $cpld->{$a} cmp $cpld->{$b} } keys(%$cpld)) {
		$net = reverse $cpld->{$_};
		if($net =~ /^([0-9]+)/) {
			$bus = substr($cpld->{$_}, 0, length($cpld->{$_})-length($1));
			$num = reverse $1;
			printf OUT 'NET "%s<%d>" LOC = "P%d" ;'."\n", $bus, $num, $_;
		} else {
			printf OUT 'NET "%s" LOC = "P%d" ;'."\n", $cpld->{$_}, $_;
		}
	}
	
	close OUT;
}
chkbox
Erleuchteter
Erleuchteter
Beiträge: 440
Registriert: Samstag 10. April 2004, 15:17

Beitrag von chkbox »

Habe meins jetzt mal so weit ich konnte editiert

Code: Alles auswählen

NET "GND" LOC = "P62" ;
NET "GND" LOC = "P18" ;
NET "GND" LOC = "P114" ;
NET "GND" LOC = "P72" ;
NET "GND" LOC = "P89" ;
NET "GND" LOC = "P108" ;
NET "GND" LOC = "P99" ;
NET "GND" LOC = "P123" ;
NET "GND" LOC = "P144" ;
NET "GND" LOC = "P29" ;
NET "GND" LOC = "P47" ;
NET "GND" LOC = "P90" ;
NET "GND" LOC = "P36" ;
NET "VCC" LOC = "P42" ;
NET "VCC" LOC = "P127" ;
NET "VCC" LOC = "P109" ;
NET "VCC" LOC = "P73" ;
NET "VCC" LOC = "P1" ;
NET "VCC" LOC = "P141" ;
NET "VCC" LOC = "P84" ;
NET "VCC" LOC = "P37" ;
NET "VCC" LOC = "P55" ;
NET "VCC" LOC = "P8" ;

NET "GSR" LOC = "P143" ;
NET "CAS<1>" LOC = "P23" ;
NET "CKE<1>" LOC = "P24" ;
NET "CLK<1>" LOC = "P30" ;
NET "CLK<2>" LOC = "P32" ;
NET "CLK<3>" LOC = "P38" ;
NET "CS<2>" LOC = "P34" ;
NET "LDOM<1>" LOC = "P140" ;
NET "LDOM<2>" LOC = "P44" ;
NET "RAS<1>" LOC = "P22" ;
NET "TCK" LOC = "P67" ;
NET "TDI" LOC = "P63" ;
NET "TDO" LOC = "P122" ;
NET "TEST" LOC = "P110" ;
NET "TMS" LOC = "P65" ;
NET "TS<1>" LOC = "P5" ;
NET "TS<2>" LOC = "P6" ;
NET "TS<3>" LOC = "P2" ;
NET "TS<4>" LOC = "P3" ;
NET "UDOM<1>" LOC = "P135" ;
NET "UDOM<2>" LOC = "P39" ;
NET "WE<1>" LOC = "P33" ;
NET "X<0>" LOC = "P16" ;

NET "PA<0>" LOC = "P111" ;
NET "PA<1>" LOC = "P112" ;
NET "PA<2>" LOC = "P113" ;
NET "PA<3>" LOC = "P115" ;
NET "PB<0>" LOC = "P116" ;
NET "PB<1>" LOC = "P117" ;
NET "PB<2>" LOC = "P118" ;
NET "PB<3>" LOC = "P119" ;
NET "PC<0>" LOC = "P66" ;
NET "PC<1>" LOC = "P68" ;
NET "PC<2>" LOC = "P70" ;
NET "PC<3>" LOC = "P57" ;
NET "PD<0>" LOC = "P59" ;
NET "PE<0>" LOC = "P71" ;
NET "PE<1>" LOC = "P74" ;
NET "PE<2>" LOC = "P64" ;
NET "PE<3>" LOC = "P69" ;

NET "A<9>" LOC = "P28" ;
NET "A<10>" LOC = "P35" ;
NET "A<11>" LOC = "P27" ;
NET "A<12>" LOC = "P31" ;
NET "A<13>" LOC = "P25" ;
NET "A<14>" LOC = "P26" ;
NET "A<15>" LOC = "P21" ;
NET "A<17>" LOC = "P14" ;
NET "A<18>" LOC = "P19" ;
NET "A<19>" LOC = "P20" ;

NET "Addr<9>" LOC = "P10" ;
NET "Addr<8>" LOC = "P12" ;
NET "Addr<7>" LOC = "P17" ;
NET "Addr<6>" LOC = "P15" ;
NET "Addr<5>" LOC = "P7" ;
NET "Addr<4>" LOC = "P13" ;
NET "Addr<3>" LOC = "P11" ;
NET "Addr<2>" LOC = "P9" ;
NET "Addr<1>" LOC = "P142" ;
NET "Addr<0>" LOC = "P4" ;

NET "Data0<0>" LOC = "P54" ;
NET "Data0<1>" LOC = "P53" ;
NET "Data0<2>" LOC = "P52" ;
NET "Data0<3>" LOC = "P51" ;
NET "Data0<4>" LOC = "P46" ;
NET "Data0<5>" LOC = "P45" ;
NET "Data0<6>" LOC = "P43" ;
NET "Data0<7>" LOC = "P48" ;
NET "Data1<0>" LOC = "P60" ;
NET "Data1<1>" LOC = "P61" ;
NET "Data1<2>" LOC = "P58" ;
NET "Data1<3>" LOC = "P56" ;
NET "Data1<4>" LOC = "P50" ;
NET "Data1<5>" LOC = "P49" ;
NET "Data1<6>" LOC = "P41" ;
NET "Data1<7>" LOC = "P40" ;
NET "Data2<0>" LOC = "P139" ;
NET "Data2<1>" LOC = "P138" ;
NET "Data2<2>" LOC = "P137" ;
NET "Data2<3>" LOC = "P136" ;
NET "Data2<4>" LOC = "P124" ;
NET "Data2<5>" LOC = "P125" ;
NET "Data2<6>" LOC = "P126" ;
NET "Data2<7>" LOC = "P121" ;
NET "Data3<0>" LOC = "P134" ;
NET "Data3<1>" LOC = "P133" ;
NET "Data3<2>" LOC = "P132" ;
NET "Data3<3>" LOC = "P131" ;
NET "Data3<4>" LOC = "P128" ;
NET "Data3<5>" LOC = "P130" ;
NET "Data3<6>" LOC = "P129" ;
NET "Data3<7>" LOC = "P120" ;

NET "IDEAddr<0>" LOC = "P79" | SLEW = SLOW ;
NET "IDEAddr<1>" LOC = "P80" | SLEW = SLOW ;
NET "IDEAddr<2>" LOC = "P78" | SLEW = SLOW ;
NET "IDECS0" LOC = "P77" | SLEW = SLOW ;
NET "IDECS1" LOC = "P76" | SLEW = SLOW ;
NET "IDEDMACK" LOC = "P82" | SLEW = SLOW ;
NET "IDEDMARQ" LOC = "P87" ;
NET "IDEINTRQ" LOC = "P81" ;
NET "IDERESET" LOC = "P107" | SLEW = SLOW ; 
NET "IDEIORDY" LOC = "P83" ;
NET "IDEHigh<0>" LOC = "P105" | SLEW = SLOW ;
NET "IDEHigh<1>" LOC = "P103" | SLEW = SLOW ;
NET "IDEHigh<2>" LOC = "P101" | SLEW = SLOW ;
NET "IDEHigh<3>" LOC = "P98" | SLEW = SLOW ;
NET "IDEHigh<4>" LOC = "P96" | SLEW = SLOW ;
NET "IDEHigh<5>" LOC = "P94" | SLEW = SLOW ;
NET "IDEHigh<6>" LOC = "P92" | SLEW = SLOW ;
NET "IDELow<0>" LOC = "P91" | SLEW = SLOW ;
NET "IDELow<1>" LOC = "P93" | SLEW = SLOW ;
NET "IDELow<2>" LOC = "P95" | SLEW = SLOW ;
NET "IDELow<3>" LOC = "P97" | SLEW = SLOW ;
NET "IDELow<4>" LOC = "P100" | SLEW = SLOW ;
NET "IDELow<5>" LOC = "P102" | SLEW = SLOW ;
NET "IDELow<6>" LOC = "P104" | SLEW = SLOW ;
NET "IDELow<7>" LOC = "P106" | SLEW = SLOW ;
NET "IDEDASP" LOC = "P75" ;
NET "IDEHigh<7>" LOC = "P86" | SLEW = SLOW ;
NET "IDEIOR" LOC = "P88" | SLEW = SLOW ;
NET "IDEIOW" LOC = "P85" | SLEW = SLOW ;