Re: USB Controller

Autor: Maciej W. Rozycki (macro_at_macro.ds2.pg.gda.pl)
Data: Fri 23 May 1997 - 02:53:08 MET DST


On 22 May 1997, Grzegorz Szyszlo wrote:

> lis_at_papuga.ict.pwr.wroc.pl (Jaroslaw Lis) wrote:
>
> >: zgadnij. to zalezy od kontrolera PCI, czy od kontrolera przerwan :)
> >
> >A jestes na 100% pewny ze kontroler PCI nie zawiera jeszcze jednego
> >kontrolera przerwan? Wszak x86 pozwalaja na 256-kilka przerwan
> >sprzetowych...
> >
> >J.
>
> powiedz to sterownikowi przerwan wszystemu w plyte peceta :)

 Jeden z ukladow chipsetu PCI (np. dla ukladow Intela jest to "PCI-ISA
bridge") zawiera logike realizujaca routing przerwan. Ponadto sygnaly
przerwaniowe PCI sa aktywne niskim poziomem. To umozliwia (przy
wyzwalaniu poziomem a nie zboczem) wspoldzielenie linii sterownika
przerwan przez kilka/wszystkie urzadzenia PCI. W efekcie, po odjeciu
przerwan 0, 1, 2, 8 i 13 oraz jednego, dodatkowego przerwania na
urzadzenia PCI, pozostaje jeszcze 10 przerwan nieobsadzonych. To chyba
wystarczajacy zapas. Pozostaje jeszcze kwestia napisania odpowiednich
sterownikow urzadzen (nie wiem, na przyklad, czy cokolwiek poza Linuxem
obsluguje wspoldzielenie przerwania przez kilka kontrolerow ATA ;-) ).

 Owe 10 przerwan jest doskonala rezerwa na ewentualne urzadzenia, ktore
wymagalyby bardzo szybkiej obslugi, w zwiazku z czym sterowniki nie
moglyby sobie pozwolic na luksus odpytania urzadzenia o status przerwania.

 A jak ktos potrzebowalby koniecznie miec wiecej oddzielnych przerwan, to
pozostaje jeszcze rozwiazanie oparte o uklady APIC. Zastosowanie 15
ukladow I/O APIC daje mozliwosc podlaczenia 240 urzadzen do roznych
przerwan (ale chyba tylko w rozwiazaniu prototypowym ;-) ).

--
+  Maciej W. Rozycki, Technical University of Gdansk, Poland   +
+--------------------------------------------------------------+
+        e-mail: macro_at_ds2.pg.gda.pl, PGP key available        +


To archiwum zostało wygenerowane przez hypermail 2.1.7 : Tue 18 May 2004 - 16:07:04 MET DST