Sida 8 av 9
Postat: 12 januari 2005, 23:44:57
av Schnegelwerfer
Jack: Jag håller med om att den här tråden har spårat ur totalt.
Jag är verkligen inte den som gillar att munhuggas, men när en annan användare vräker ur sig uppenbara felaktigheter, och dessutom har en riktig översittarattityd gör det mig upprörd!
Jag gillar det här forumet, eftersom folk verkligen bemödar sig om att förmedla sin kunskap till andra. Samtidigt så måste man ju få säga ifrån om någon försöker ge råd som är helt uppåt väggarna.
Postat: 13 januari 2005, 14:49:48
av Seven11
jag hittade en krets som jag tror kan fungera: MC140668-D (datablad:
http://www.onsemi.com/pub/Collateral/MC14066B-D.PDF)
Postat: 13 januari 2005, 15:15:00
av Schnegelwerfer
Hmm kollade lite snabbt på databladet, och det verkar som om man måste styra datariktningen med en kontrollsignal. Det är ju det som är det kluriga i sammanhanget.
Om man kollar i databladet ser man att kretsen är uppbyggt av FET-transistorer som bryter signalerna.
(förlåt, kunde inte låta bli att påpeka det!

)
ELFA har också flera bussdrivkretsar, men även där måste man styra datariktiningen externt.
Postat: 13 januari 2005, 15:25:59
av Seven11
hur menar du då? jag trodde att det vara bara att sätta CONTROL=1 så kunde signalen löpa från INx till OUTx?! och i så fall är ju en PIC perfekt (kollar man sidan 2 i databladet så står det ju CONTROL: VSS(0) = OFF, VDD(1) = ON)... vad missar jag?
Postat: 13 januari 2005, 15:39:21
av Schnegelwerfer
Jo, men är inte signalerna på PCI-bussen dubbelriktade, d.v.s. signalerna måste även kunna gå från Out till In?
Är dom inte dubbelriktade så kommer det ju att fungera.
EDIT: kollade upp PCI-specen, och det finns ett gäng dubbelriktade signaler. Om du vill använda ovanstående krets måste du alltså på något sätt veta när PCI-bussen vill ändra riktning på signalerna, och då ändra kretsens kontrollingång. Som sagt, det kanske går att tjuvkoppla in sig på PCI-kortet på något sätt, men det kommer ju inte att bli en transparent lösning som fungerar på alla PCI-kort.
Matsengs länk till produkten som kunde hot-swappa PCI-kort verkar ju hetare och hetare! Tror att den kostade 1800:-, det kanske blir svårt att komma billigare undan med en hemmagjord lösning.
Postat: 13 januari 2005, 15:48:35
av Seven11
aha, nu förstår jag... dom flesta signalerna är ju dubbelriktade men då kan man väl använda 2 kanaler på MC140668-D (innehåller ju 3 kanaler) en där IN är kopplad till X och OUT till Y på den andra kanalen byter man bara så X är kopplad till OUT och Y är kopplad till IN, självklart så måste ju CONTROL signalerna på de båda kanalerna vara ihopkopplad...
[EDIT]
Det är främst av ekonomiska skäl som jag vill använda bussdrivare istället för de där FET transistorerna...
[/EDIT]
Postat: 13 januari 2005, 15:56:10
av AndLi
Schnegelwerfer: De är dubbelriktade!
Och tyvärr verkar det inte finnas en enkel signal för att tala om vilken riktning som de går i för tillfället....
Borde ju gå att analysera PCI datan realtid och ställa om riktningen.. MEN det låter rätt bevärligt.
Vad jag hitta i specen är följande:
Kod: Markera allt
REQ#
Request is used by a PCI device to request use of the bus. Each PCI device has its own unique REQ# signal. The arbiter in the PCI system receives the REQ# signals from each device. It is important that this signal be tri-stated while RST# is asserted to prevent a system hang. This signal is implemented only be devices capable of being an initiator.
GNT#
Grant indicates that a PCI device's request to use the bus has been granted. Each PCI device has its own unique GNT# signal from the PCI system arbiter. If a device's GNT# signal is active during one clock cycle, then the device may begin a transaction in the following clock cycle by asserting the FRAME# signal. This signal is implemented only be devices capable of being an initiator.
Om man klipper signalen REQ från kortet till busen och lägger GNT hög in mot kortet hela tiden så borde inte PCI kortet få göra något alls utan bara ligga där. Har inte hela PCI specen tillgänglig så att jag kan inte kontrollera om det är definerat i den vad som är bestämt ska hända om man inte får GNT signalen.
REQ ligger alltid från PCI kort till bus och GNT från PCI bus till PCI kort.
Känns som det är värt att prova... Skyll inte på mig om det börjar ryka dock
Sidan med en liten förklaring av signaler och riktningar på dem
Postat: 13 januari 2005, 16:01:20
av Schnegelwerfer
FET-trissorna lider ju av samma problem som bussdrivkretsarna: dom fungerar inte dubbelriktat.
FET-lösningen hade jag egentligen bara tänkt för spänningsmatningen.
Hmm.. undrar om man helt rått kan parallellkoppla två kanaler som du föreslår, en åt varje håll? Just nu kommer jag inte på något skäl till att det inte skulle fungera.
Om det funkar att parallellkoppla, så kanske det finns billigare kretsar än MC140668-D, ex. 74HC241 (8 ingångar/utgångar), 5:- på ELFA (> 18st.)
Postat: 13 januari 2005, 16:05:21
av matseng
Så länge signalen är stabil så fungerar det nog bra. Men när bussen ska gå från 0 till +5 volt så ligger ju "bak-drivaren" och fortfarande försöker peta ut 0 på bussen mot datorn. Om dom nya driverna är starkare än datrorns drivare så kommer dom aldrig att kunna slå om. Är datorns däremot starkare så kommer man förmodligen att få krafttigt förlängda omslagstider eftersom den ska slåss mot den nya drivaren ett tag innan den har vunnit över den.
Postat: 13 januari 2005, 16:14:44
av Seven11
AndLi: PCI specen finns på
http://www.osdever.net/cottontail/downl ... /PCI22.zip (PCI 2.2) jag har även 2.1 och 2.3 om någon är intresserad.
matseng: så du säger att det inte funkar med parallel kopplade bussdrivare... eller parallel kopplade FET:s?
Då verkar det ju som om ända lösningen är att hita en signal kombination som stänger ner kortet?
Postat: 13 januari 2005, 16:25:12
av Schnegelwerfer
Parallellkopplade FETs borde funka bättre än parallellkopplade drivkretsar iom. att dom inte aktivt försöker mata bussen.
Om det fungerar med FETs tycker jag att det är konstigt att det inte finns färdiga sådana kretsar! Det vore ju väldigt smidigt om man kunde Tri-state:a en dubbelriktad buss med en färdig krets!
Eftersom jag inte hittat några färdiga sådana kretsar misstänker jag dock att det finns någon hake med det hela...

Postat: 13 januari 2005, 16:55:48
av Seven11
problemet med parallel kopplade FET:s är ju det ekonomiska, ett projekt som detta kommer ju då lätt att uppnå flera 1000 lappar!!!
Postat: 13 januari 2005, 17:02:14
av Schnegelwerfer
För logiksignaler behöver du ju inte någon dyr HEXFET, utan det skulle t.e.x. räcka med en 71-096-48 på ELFA (2,57kr)
Men som sagt, jag tror att det finns någon mer hake med detta...
Postat: 13 januari 2005, 17:24:55
av Seven11
det finns säkert färdiga produkter som gör detta, men det finns nog inte så många då detta säkert inte är något som många behöver... de flesta (företag) som håller på med system programming lär nog ha flera moderkort som de olika PCI korten sitter på. Dock så har jag inte pengar eller plats för något sådant
Postat: 13 januari 2005, 17:45:55
av matseng
Fast en till dator som man ställer ovanpå den andra kostar inte många kronor i dag - särkilt om man inte behöver en P4-3.8GHz. En vanlig gammburk med en typ PIII-500 i kan man ju får får ett antal hundralappar om man letar lite. Du kan säkert få en gratis från nåt lokalt företag som har skrot stående i ett förrådsrum.
För att ha och testa med så behöver den ju inte vara lika snabb som ens riktiga utvecklingsmaskin. Fjärrstyr man den sedan via VNC eller något liknande så behöver man inte ens offra pengar på en switch för skärm/tangentbord (eller plats för en uppsättning till).