• Nenhum resultado encontrado

MICROPCI V1.2 INTERFACE PCI - MANUAL DE UTILIZAÇÃO. Octávio César Martins Pinto

N/A
N/A
Protected

Academic year: 2021

Share "MICROPCI V1.2 INTERFACE PCI - MANUAL DE UTILIZAÇÃO. Octávio César Martins Pinto"

Copied!
24
0
0

Texto

(1)

MICROPCI V1.2

INTERFACE PCI - MANUAL DE UTILIZA¸

AO

Oct´avio C´esar Martins Pinto

octavio.pinto@fe.up.pt

(2)

Conte´

udo

1 Introdu¸c˜ao ao MICROPCI 1

2 Constitui¸c˜ao e caracter´ısticas 2

2.1 Conectores da interface . . . 2

2.1.1 Alimenta¸c˜ao . . . 2

2.1.2 Conector de liga¸c˜ao a CORE51 . . . 3

2.1.3 Conector gen´erico . . . 4

2.1.4 Conector PCI . . . 4

2.2 Configura¸c˜ao dos jumpers . . . 6

2.3 Cabos de liga¸c˜oes . . . 6

2.3.1 Flat Cable de 40 pinos . . . 6

2.3.2 Flat Cable de 20 pinos . . . 6

2.3.3 Power Cable . . . 8

3 Modo de funcionamento 9 3.1 Escrita s´erie e directa . . . 11

3.2 Leitura s´erie e directa . . . 12

4 Modifica¸c˜oes do MICROPCIv1.1 13 A Hardware da interface MICROPCI 14 A.1 PCB . . . 14

A.2 Lista de Componentes . . . 15

A.3 Esquema El´ectrico . . . 16

B Caracter´ısticas gerais do shift register 74xxx299 18

(3)

Cap´ıtulo 1

Introdu¸

ao ao MICROPCI

A interface MICROPCI ´e resultado de um projecto de fim de curso de Engenharia Electrot´ecnica,

desenvolvido pelo aluno Oct´avio C´esar Martins Pinto. A interface MICROPCI ´e uma interface PCI

de 32 bits para microcontroladores de 8bits.

Este documento ´e um manual de utiliza¸c˜ao da interface MICROPCI, descrevendo a suas

caracter´ıs-ticas, e o modo de utiliza¸c˜ao da mesma.

Figura 1.1: MicroPCI v1.2

O objectivo desta interface ´e, de poder controlar um dispositivo PCI de 32bits a partir de

micro-controladores de 8 bits, e outros. Ou seja o utilizador n˜ao precisa de se preocupar com os sinais PCI

necess´arios, ou como efectuar transac¸c˜oes, s´o necessita desta interface e da livraria de fun¸c˜oes que

permite directamente escrever/ler para uma posi¸c˜ao de mem´oria do dispositivo PCI, permitindo o seu

(4)

Cap´ıtulo 2

Constitui¸

ao e caracter´ısticas

O MICROPCI ´e uma interface geral para acesso e controlo do barramento PCI com alimenta¸c˜ao

pr´opria, atrav´es de um sistema microcontrolado ou outro. Para isso existe dois conectores principais

para liga¸c˜ao destes sistemas que est˜ao descritos nas sec¸c˜oes seguintes.

2.1

Conectores da interface

Figura 2.1: Conectores da interface

2.1.1 Alimenta¸c˜ao

(5)

O conector da alimenta¸c˜ao permite a liga¸c˜ao de uma Fonte DC entre 6.5V e 18V. Este conector

tem protec¸c˜ao contra invers˜ao de polaridade, mas s´o funciona tendo a polaridade correctamente ligada!

´

E recomendado utilizar uma tens˜ao de alimenta¸c˜ao da ordem dos 9V, para evitar sobreaquecimento

dos reguladores de tens˜ao.

Existe um LED (Vermelho) que quando ligado indica que a interface est´a correctamente ligada.

2.1.2 Conector de liga¸c˜ao a CORE51

A interface disponibiliza um conector de liga¸c˜ao directa `a CORE51, facilitando o desenvolvimento

de software para microcontrolador de 8 bits. Este ´e um conector de 40 pinos, mas s´o alguns dos sinais

s˜ao utilizados.

Figura 2.3: Conector de liga¸c˜ao a CORE51 (40 pinos)

Tabela 2.1: Defini¸c˜ao dos sinais do conector de liga¸c˜ao `a CORE51 de 40 pinos

Pino 8051 Sinal Sinal Descri¸c˜ao Pino 8051 Sinal Sinal Descri¸c˜ao 1 P1.0 PCI CLK CLOCK do barramento PCI 40 VCC -

-2 P1.1 S IN Serial INPUT - shifts registers 39 P0.0(AD0) - -3 P1.2 DEVSEL# Sinal PCI - Device Select 38 P0.1(AD1) - -4 P1.3 TRDY# Sinal PCI - Target Ready 37 P0.2(AD2) - -5 P1.4 STOP# Sinal PCI - Stop transaction 36 P0.3(AD3) - -6 P1.5 OE Output Enable - shifts registersa 35 P0.4(AD4) - -7 P1.6 GNT/OE Sinal PCI - Grant e OEb 34 P0.5(AD5) - -8 P1.7 S1 Mode Select 1 - shifts registers 33 P0.6(AD6) - -9 RESET RST Reset - do barramento PCI 32 P0.7(AD7) -

-10 P3.0(RxD) - - 31 EA/VPP -

-11 P3.1(TxD) - - 30 ALE/PROG -

-12 P3.2(INT0) REQ# Sinal PCI - Request 29 PSEN - -13 P3.3(INT1) INTA# Sinal PCI - Interrupt A (e C)c 28 P2.7(A15) - -14 P3.4(T0) CLK CLOCK - shifts registers 27 P2.6(A14) - -15 P3.5(T1) S OUT Serial OUTPUT - shifts registers 26 P2.5(A13) -

-16 P3.6(WR) - - 25 P2.4(A12) - -17 P3.7(RD) - - 24 P2.3(A11) - -18 - - - 23 P2.2(A10) - -19 - - - 22 P2.1(A9) - -20 GND GND Ground 21 P2.0(A8) - -a

OE comum aos 4 shifts registers que cont´em AD[31:0]

b

OE do shift register dos sinais de controlo(FRAME#,IRDY#,...)

(6)

2.1.3 Conector gen´erico

Existe um outro conector de 20 pinos que disponibiliza a maior parte dos sinais do barramento PCI e todos os sinais de controlo da interface. Este conector permite aceder a sinais que possam ter

relevˆancia em algumas aplica¸c˜oes.

Figura 2.4: Conector gen´erico (20 pinos)

Tabela 2.2: Defini¸c˜ao dos sinais do conector geral de 20 pinos

Pino Sinal Descri¸c˜ao Liga¸c˜ao

1 REQ# Sinal PCI - Request PCI bus, com R=2k7 pull-up 2 INTA# Sinal PCI - Interrupt A (e C) PCI bus, com R=10k pull-up 3 S OUT Serial OUTPUT - shifts registers shift register

4 GNT#/OE Sinal PCI - Grant/Output Enable PCI bus, com R=2k7 pull-up/shift register via inversor 5 CLR Clear - shifts registers shift register, com R=2k7 pull-up

6 STOP# Sinal PCI - Stop transaction PCI bus 7 PERR# Sinal PCI - Parity Error PCI bus 8 S IN Serial INPUT - shifts registers shift register 9 PCI CLK CLOCK do barramento PCI PCI bus

10 PRSNT2# Sinal PCI - Device Present 2 PCI bus com R=10k pull-up 11 PRSNT1# Sinal PCI - Device Present 1 PCI bus com R=10k pull-up 12 GNT#/OE Sinal PCI - Grant PCI bus, com R=2k7 pull-up 13 REQ# Sinal PCI - Request PCI bus, com R=2k7 pull-up 14 DEVSEL# Sinal PCI - Device Select PCI bus, com R=2k7 pull-up 15 TRDY# Sinal PCI - Target Ready PCI bus, com R=2k7 pull-up 16 SERR# Sinal PCI - System Error PCI bus, com R=2k7 pull-up 17 OE Output Enable - shifts registers shifts registers

18 S1 Mode Select 1 - shifts registers shifts registers 19 CLK CLOCK - shifts registers shifts registers

20 RST Reset - do barramento PCI via inversor para o PCI bus

Nota: Existe sinais repetidos, devido `as modifica¸c˜oes efectuadas na nova vers˜ao 1.2 da interface

que ser˜ao explicadas mais `a frente.

2.1.4 Conector PCI

A interface foi desenvolvida em torno do conector PCI de 32bits/5V.

(7)

Figura 2.6: Descri¸c˜ao dos pinos do conector PCI

Nota: Sinais do conector PCI que n˜ao foram usados na interface:

• Sinais JTAG : A1-TRST#, A3-TMS, A4-TDI, B2-TCK, B4-TDO. • Sinais de POWER Management : A14-3.3Vaux, A19-PME#. • Todos os sinais “reserved”: A9, A11, A40, A41, B10, B14.

• Sinais de expans˜ao de 64bits : A60-REQ64#, B60-ACK64#.

(8)

2.2

Configura¸

ao dos jumpers

No MICROPCI existe apenas 2 jumpers, que permite aceder `as interrup¸c˜oes INTC# e INTD# do

barramento PCI.

Figura 2.7: Configura¸c˜ao dos Jumpers

Tabela 2.3: Defini¸c˜ao dos Jumpers

Jumper OFF ON

JP1 INTA# INTA# e INTC#

JP2 INTB# INTB# e INTD#

Sendo as sa´ıdas INTA#, INTB#, INTC# e INTD# open-drain, a liga¸c˜ao deste sinais foram

agru-pados dois a dois para diminuir o n´umero de sinais necess´arios. O circuito de liga¸c˜oes pode ser visto

no esquema el´ectrico da p´agina 17 na figura A.5.

Nota: Caso os jumpers estejam ON, para saber qual a interrup¸c˜ao que foi gerada ´e necess´ario

consultar os registos internos de cada fun¸c˜ao do dispositivo PCI.

Na nova vers˜ao 1.2 foi retirado o sinal INTB# n˜ao estando portanto acess´ıvel INTB# e INTD#.

Devido a maior parte dos dispositivos PCI usar apenas INTA# n˜ao foi efectuado adapta¸c˜oes nesta

vers˜ao, deixando para futuras vers˜oes a possibilidade de juntar por exemplo todos os INTx# num s´o

e portanto deixando de ser necess´ario os jumpers. Nesta situa¸c˜ao, o driver ter´a a responsabilidade de

verificar qual a fun¸c˜ao que gerou a interrup¸c˜ao!

2.3

Cabos de liga¸

oes

2.3.1 Flat Cable de 40 pinos

O cabo de 40 pinos permite a liga¸c˜ao directa `a placa de desenvolvimento CORE51 (ver figura 2.8).

Na figura 2.9 mostra-se a forma correcta da liga¸c˜ao do MicroPCI `a CORE51.

2.3.2 Flat Cable de 20 pinos

(9)

Figura 2.8: Flat cable de liga¸c˜ao do MICROPCI `a CORE51

Figura 2.9: Liga¸c˜ao entre MICROPCI e CORE51

(10)

2.3.3 Power Cable

O cabo de alimenta¸c˜ao permite alimentar a microPCI. Como j´a foi referido este poder´a ligar a uma

fonte de alimenta¸c˜ao DC externa de 6.5V - 18V.

Figura 2.11: Cabo de Alimenta¸c˜ao do MicroPCI

Como est´a representado na figura 2.11 o conector preto ´e a massa, e o vermelho o conector positivo!

(11)

Cap´ıtulo 3

Modo de funcionamento

Sendo o barramento PCI constitu´ıdo por muitos sinais (32 de endere¸cos/dados e 21 principais de

controlo), seria dif´ıcil ligar e controlar directamente atrav´es de pequenos microcontroladores,

nomea-damente os de 8 bits. Esta interface foi, portanto, desenvolvida de modo a poder aceder `a maior parte

dos sinais em modo s´erie recorrendo a shifts registers universais de 8bits ligados em cadeia, ou seja

permitindo ler e escrever n vezes 8bits com apenas 6 sinais (Excluindo o ’clear’). Neste caso foram utilizado 5 shifts registers disponibilizando um total de 40bits.

Figura 3.1: Representa¸c˜ao l´ogica da cadeia dos 5 shifts registers usados na interface.

Nota: As caracter´ısticas principais dos shifts register podem ser encontradas nos anexos B p´agina

18. Os sinais do barramento PCI, ao qual liga cada registo dos shifts registers, encontra-se na tabela

3.1 na p´agina 10.

Na vers˜ao 1.2 da interface MICROPCI, o sinal S0, j´a n˜ao est´a dispon´ıvel nos conectores (Substitu´ıdo

por GNT#/OE). Sendo que a cadeia de shifts registers s´o tˆem dois modos de funcionamento:

1. Shift Right - A cada impulso de Clock, os 40 registos s˜ao deslocados no sentido de S IN para

S OUT.

2. Parallel Load - A cada impulso de Clock, os 40 sinais s˜ao carregados para os registos.

Na vers˜ao 1.2 da interface j´a ´e poss´ıvel controlar o shift register U2 como input ou output usando o

sinal GNT#/OE. Sendo que, quando GNT#=0 ⇒ OE=1 e GNT#=1 ⇒ OE=0.

Nas sec¸c˜oes seguintes, mostra-se como utilizar a cadeia de shifts registers, para escrever e ler sinais

(12)

Tabela 3.1: Defini¸c˜ao das liga¸c˜oes dos shifts registers ao barramento PCI

Shift N´umero Sinal N´umero Sinal Register do pino na cadeia PCI

U1 7 A/QA ou I/O0 1 AD[31]

U1 13 B/QB ou I/O1 2 AD[16]

U1 6 C/QC ou I/O2 3 AD[29]

U1 14 D/QD ou I/O3 4 AD[23]

U1 5 E/QE ou I/O4 5 AD[25]

U1 15 F/QF ou I/O5 6 AD[21]

U1 4 G/QG ou I/O6 7 AD[27]

U1 16 H/QH ou I/O7 8 AD[19]

U2 7 A/QA ou I/O0 9 IDSEL

U2 13 B/QB ou I/O1 10 FRAME#

U2 6 C/QC ou I/O2 11

-U2 14 D/QD ou I/O3 12 IRDY#

U2 5 E/QE ou I/O4 13 C/BE[3]#

U2 15 F/QF ou I/O5 14 C/BE[2]#

U2 4 G/QG ou I/O6 15 C/BE[1]#

U2 16 H/QH ou I/O7 16 C/BE[0]#

U3 7 A/QA ou I/O0 17 AD[30]

U3 13 B/QB ou I/O1 18 AD[28]

U3 6 C/QC ou I/O2 19 AD[26]

U3 14 D/QD ou I/O3 20 AD[24]

U3 5 E/QE ou I/O4 21 AD[15]

U3 15 F/QF ou I/O5 22 AD[22]

U3 4 G/QG ou I/O6 23 AD[20]

U3 16 H/QH ou I/O7 24 AD[18]

U4 7 A/QA ou I/O0 25 AD[17]

U4 13 B/QB ou I/O1 26 AD[8]

U4 6 C/QC ou I/O2 27 AD[13]

U4 14 D/QD ou I/O3 28 AD[10]

U4 5 E/QE ou I/O4 29 AD[11]

U4 15 F/QF ou I/O5 30 AD[12]

U4 4 G/QG ou I/O6 31 AD[9]

U4 16 H/QH ou I/O7 32 AD[14]

U5 7 A/QA ou I/O0 33 AD[7]

U5 13 B/QB ou I/O1 34 AD[6]

U5 6 C/QC ou I/O2 35 AD[5]

U5 14 D/QD ou I/O3 36 AD[4]

U5 5 E/QE ou I/O4 37 AD[3]

U5 15 F/QF ou I/O5 38 AD[2]

U5 4 G/QG ou I/O6 39 AD[1]

(13)

3.1

Escrita s´

erie e directa

Existe sinais na interface que s˜ao acess´ıveis directamente para escrita, ou seja, sem passar pela

cadeia de shifts registers, nomeadamente:

Para o barramento PCI: Para o controlo da cadeia de shifts registers:

• PCI CLK • RST • GNT#/OE • S1 • CLR • S IN • OE • CLK ou CP

Este sinais podem ser escritos directamente atrav´es do respectivo pino dos conectores de 20 ou 40

pinos! Por outro lado existe sinais que s´o est˜ao acess´ıveis via os shifts registers.(ver tabela 3.1

na p´agina 10)

M´etodo para escrever na cadeia de shifts registers:

• Configurar a cadeia de shifts registers:

1. Por no modo “Shift Right”: S1=0(S0=1 por hardware).

2. O sinal GNT#/OE deve estar activo em modo MASTER, e desactivo em modo SLAVE. 3. O sinal Output Enable (OE) pode estar activo ou inactivo conforme o desejado.

Nota: J´a n˜ao ´e necess´ario desactivar o master reset/clear pois este sinal tˆem uma

re-sistˆencia de pull-up que garante que este sinal est´a sempre desactivo (=1) (CLR=1 por

hardware).

• Preparar os 40 bits a introduzir na cadeia dos shifts registers.

• Introduzir na cadeia o bit 40 em primeiro, 39 em seguida e assim sucessivamente at´e ao bit 1 de

forma a ficarem ordenados correctamente. 1. Escrever o bit em S IN

2. Efectuar um impulso ascendente em CLK (ou CP conforme datasheet)

Ap´os o impulso os 40 bits s˜ao deslocados ficando o bit de S IN no registo 1

3. Voltar ao ponto 1 at´e ter introduzidos os 40 bits.

Nota: Ao introduzir os 40 bits, os dados anteriores s˜ao substitu´ıdos pelos novos! Para optimizar o

processo, pode-se ler os bits que v˜ao saindo em S OUT `a medida que se vai escrevendo para os shifts

registers, desta forma s´o num ciclo escrevemos 40 bits nesses e podemos ler os 40 bits anteriores!(Este

procedimento s´o ´e valido se os bits que se introduz na cadeia de shifts registers n˜ao depende do valor

(14)

3.2

Leitura s´

erie e directa

Existe sinais na interface que s˜ao acess´ıveis directamente para leitura, ou seja, sem passar pela

cadeia de shifts registers,nomeadamente:

Para o barramento PCI: Para o controlo da cadeia de shifts registers:

• INTA# • PERR# • SERR# • PRSNT1# • PRSNT2# • REQ# • PAR • DEVSEL# • TRDY# • STOP# • S OUT

Este sinais podem ser lidos directamente atrav´es do respectivo pino dos conectores de 20 ou 40

pinos! Por outro lado existe sinais que s´o est˜ao acess´ıveis via os shifts registers.(ver tabela 3.1

na p´agina 10)

M´etodo para ler da cadeia de shifts registers:

• Configurar a cadeia de shifts registers:

1. Por no modo “Shift Right”: S1=0(S0=1 por hardware).

2. O sinal GNT#/OE deve estar activo em modo MASTER, e desactivo em modo SLAVE. 3. O sinal Output Enable (OE) pode estar activo ou inactivo conforme o desejado.

Nota: J´a n˜ao ´e necess´ario desactivar o master reset/clear pois este sinal tˆem uma

re-sistˆencia de pull-up que garante que este sinal est´a sempre desactivo (=1) (CLR=1 por

hardware).

• Preparar os 40 bits que ir˜ao receber os dados lidos.

• Ler na cadeia o bit 40 em primeiro, 39 em seguida e assim sucessivamente at´e ao bit 1 de forma a ficarem ordenados correctamente.

1. Ler o bit em S OUT

2. Efectuar um impulso ascendente em CLK (ou CP conforme datasheet)

Ap´os o impulso os 40 bits s˜ao deslocados, o registo 40 passa agora a ter o valor do registo

39.

3. Voltar ao ponto 1 at´e ter lido os 40 bits.

Nota: Ao ler os 40 bits, ser´a introduzido nos shifts registers o que estiver em S IN em cada impulso!

Para optimizar o processo, pode-se escrever os bits seguintes `a leitura desta forma s´o num ciclo lemos

40 bits e escrevemos 40 novos bits na cadeia!( Este procedimento s´o ´e valido se os bits que se introduz

(15)

Cap´ıtulo 4

Modifica¸

oes do MICROPCIv1.1

Na fase de desenvolvimento do software da interface foram encontradas algumas caracter´ısticas que seriam interessantes incluir na interface para aumentar a sua flexibilidade:

V´arios dispositivos PCI necessitam de efectuar transac¸c˜oes PCI para funcionar correctamente, isto

´

e serem MASTER. Nem todos os dispositivos podem ser controlados em modo SLAVE que era o

pressuposto nas vers˜oes anteriores da interface. Este facto deve-se a que, esta caracter´ıstica torna o

sistema mais eficiente isto ´e retira carga de processamento ao processador. Por exemplo, na placa de

rede baseada no RTL8139D, esta recorre ao modo master para armazenar e ir buscar os pacotes de

dados `a mem´oria principal, evitando que seja o processador a efectuar esta tarefa.

Foi necess´ario alterar a interface de modo a suportar o modo master de um dispositivo PCI.

• Ligar os sinais GNT# e REQ# ao microcontrolador que permite controlar a possibilidade de

um dispositivos iniciar transa¸c˜oes (modo MASTER).

• Por outro lado foram colocadas as resistˆencia de pull-up directamente na interface, em vez de

usar uma breadboard.

• Ligar o sinal OE do shift register dos sinais de controlo (FRAME#,IRDY#,IDSEL,C/BE#[3:0])

ao microcontrolador de modo a poder colocar estes sinais em alta-impedˆancias quando a interface

est´a em modo slave!

A liga¸c˜ao de REQ# foi efectuada directamente ao pino onde estava o sinal INTB#, visto podermos

agrupar todos os sinais de interrup¸c˜ao num s´o.

A liga¸c˜ao das resistˆencia de pull-up foi efectuada directamente na interface utilizando arrays de

resistˆencias de 2k7Ω com pino comum.

Devido a ter poucos sinais de controlo, foi necess´ario substituir o sinal PAR pelo sinal GNT#/OE.

Este sinal liga directamente ao pino GNT# do barramento PCI e tamb´em liga a entrada de um inversor

l´ogico cuja sa´ıda est´a ligada ao OE do shift register dos sinais de controlo. Pois, verificou-se como j´a

foi referido anteriormente, o sinal GNT# e OE s˜ao sim´etricos da´ı a necessidade do inversor.

Com estas modifica¸c˜oes ´e poss´ıvel monitorizar o sinal REQ# para saber quando um dispositivo

necessita de iniciar uma transac¸c˜ao, e actuar GNT# (colocando automaticamente o shift register

dos sinais de controlo em alta-impedˆancia) de forma a indicar que o dispositivo pode efectuar uma

(16)

Apˆ

endice A

Hardware da interface MICROPCI

A.1

PCB

(17)

Figura A.3: PCB - Componentes

A.2

Lista de Componentes

Conectores:

• CON1 - Conector 12V fˆemea

• CON2 - Conector 20 pinos para flat cable • CON3 - Conector 40 pinos para flat cable • JP1, JP2 - Jumper

• PCI1 - Conector PCI 32bits/5V Condensadores: • C1,C2,C3 - 10µF (Tˆantalo, 25V) • C4,C7 - 100µF (Electrol´ıtico, 25V) • C5 - 560pF (Cerˆamico) • C6 - 1500pF (Cerˆamico) • C8 - 1000µF (Electrol´ıtico, 16V) Bobinas:

• L1 - 56µH (Tipo choke, Imin=200mA)

• L1 - 100µH (Tipo choke, Imin=100mA)

Diodos:

• D1,D2 - 1N5819 • D4 - (3A)

(18)

Trans´ıstores: • Q1 - BC547 Resistˆencias: • R1,R2,R3,R4 - 47KΩ 1/4W • R5 - 68Ω 1/4W • R6,R9 - 0.25Ω 1/4W • R7,R11,R12 - 3K9Ω 1/4W • R8,R10 - 33KΩ 1/4W • R13 - 1KΩ 1/4W • R14 - 10KΩ 1/4W Circuitos Integrados: • U1,U2,U3,U4,U5 - 74HCT299 • U7 - LM1086-3.3 • U8 - LM1086-5 • U9,U10 - MC34063A

A.3

Esquema El´

ectrico

MicroPCI v1.2 : Ver p´agina 17.

Nota:O esquema el´ectrico da v1.2 da interface representa o resultado final depois das modifica¸c˜oes

relativas a vers˜ao 1.1 que foram efectuadas directamente no mesmo PCB recorrendo a fios, e cortes de

pistas para ligar os sinais como especificado nas sec¸c˜oes anteriores anteriormente.

(19)

5 5 4 4 3 3 2 2 1 1 D D C C B B A A +5V/1.5A MA X +3.3V/1.5A MA X

+12V/0.2A MAX -12V/0.1A MAX

<Doc> 1.2 MicroPCI - Interface C 11 Sunday, May 21, 2006 Title Siz e Document Number Rev Date: Sheet of S_IN S1 S1 S1 INTB# INTC# PCI_CLK INTA# S_OUT RST /OE GNT# STOP# PRSNT1# TRDY# /OE CLK CLK DEVSEL# CLK /CLR /CLR /CLR CLK CLK REQ# CLK S_IN RST S1 S1 REQ# /OE TRDY# AD[0..31] INTD# RST C/BE3# SERR# PRSNT1# C/BE0# PAR PERR# TRDY# IRDY# INTB# GNT# FRAME# PCI_CLK STOP # INTC# DEVSEL# C/BE2# INTD# RST# INTA# REQ# PRSNT2# PRSNT2# C/BE1# IDSEL /CLR AD9 FRAME# C/BE0# AD11 AD15 CLK /OE /OE /OE /OE_U2 S1 /CLR AD23 STOP# PCI_CLK INTA# /CLR S_OUT PRSNT1# INTA# REQ# S_IN AD19 AD16 AD10 AD4 AD18 AD8 AD26 IDSEL AD25 AD10 AD29 AD15 AD2 AD20 AD0 AD31 AD25 AD21 AD31 S_OUT C/BE1# C/BE3#

AD17 AD14 AD5

AD27 AD18 AD3 AD12 AD17 AD28 AD28 IRDY# AD30 AD24 AD14 AD13 AD6 C/BE2# AD30 AD20 AD21 AD19 AD29 AD7

AD26 AD16 AD13AD11

AD27 AD8 AD1 AD22 AD22 AD23 AD9 AD24

AD6AD5 AD3AD2AD1

AD7 AD4 AD0

AD12 SERR# GNT# PRSNT2# DEVSEL# PERR# S1 PAR FRAME# IRDY# GNT# REQ# /CLR SERR# STOP# TRDY# PERR# DEVSEL# /OE_U2 RST# GNT# D1 1N5819 L1 56uH D2 1N5819 R1033K R131K U8 LM1086 -5 3 2 1 VIN VOUTGND U2 74HCT299 20 10 12 1811 923119 817 713614515416 VCC GND CLK SLSR CLROE1OE2S0S1 QLQR A/QAB/QBC/QCD/QDE/QEF/QFG/QGH/QH R347K U9 MC34063A 5 3 6 4 87 12 COMP TCAP VCC GND DCPK SWCSWE R5 68R + C3 10uF PCI1

A1A2A3A4A5A6A7A8A9A10A11A12A13A14A15A16A17A18A19A20A21A22A23A24A25A26A27A28A29A30A31A32A33A34A35A36A37A38A39A40A41A42A43A44A45A46A47A48A49 A52A53A54A55A56A57A58A59A60A61A62

B1B2B3B4B5B6B7B8B9B10B11B12B13B14B15B16B17B18B19B20B21B22B23B24B25B26B27B28B29B30B31B32B33B34B35B36B37B38B39B40B41B42B43B44B45B46B47B48B49 B52B53B54B55B56B57B58B59B60B61B62 R9 R25 D4 DIODE C5 560pF R11 3K9 R14 10K U4 74HCT299 20 10 12 1811 923119 817 713614515416 VCC GND CLK SLSR CLROE1OE2S0S1 QLQR A/QAB/QBC/QCD/QDE/QEF/QFG/QGH/QH R19 10K R447K CON1 POWER 123 U3 74HCT299 20 10 12 1811 923119 817 713614515416 VCC GND CLK SLSR CLROE1OE2S0S1 QLQR A/QAB/QBC/QCD/QDE/QEF/QFG/QGH/QH U7 LM1086-3.3 1 3 2 GND VIN VOUT JP1 L2100uH + C81000uF R833K R7 3K9 CON3 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 2122 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 R17 RESISTOR SIP 9 - 2K7 1 2 3 4 5 7 6 8 9 R201K U1 74HCT299 20 10 12 1811 923119 817 713614515416 VCC GND CLK SLSR CLROE1OE2S0S1 QLQR A/QAB/QBC/QCD/QDE/QEF/QFG/QGH/QH U10 MC34063A 5 3 6 4 87 12 COMP TCAP VCC GND DCPK SWCSWE R123K9 CON2 1 2 3 4 5 6 7 8 9 10 1112 13 14 15 16 17 18 19 20 R147K + C7100uF R18 RESISTOR SIP 9 - 2K7 1 23 4 5 7 6 8 9 U5 74HCT299 20 10 12 1811 923119 817 713614515416 VCC GND CLK SLSR CLROE1OE2S0S1 QLQR A/QAB/QBC/QCD/QDE/QEF/QFG/QGH/QH + C4100uF + C2 10uF R6R25 Q1BC547 C6 1500pF D5 1.8V/2.5mA + C1 10uF JP2 Q2BC547 R247K

(20)

Apˆ

endice B

Caracter´ısticas gerais do shift register

74xxx299

O 74xxx299 ´e um shift register universal de 8 bits com armazenamento, sa´ıdas “3-State”, e reset

as-s´ıncrono. Existe diversos fabricantes deste integrado (Ex: Philips-74HC/HCT299, Texas

Instruments-CD74AC/ACT/ALS299, STMicroelectronics-M74HC299, e outros). Para uma informa¸c˜ao mais

de-talhadas consultar os datasheets dos fabricantes. Nesta sec¸c˜ao foi seleccionado o fundamental para

compreender o funcionamento deste circuito integrado.

Figura B.1: Pinos do circuito integrado

(21)
(22)

Nota: Relativamente aos modos de funcionamento,o shift left n˜ao est´a acess´ıvel na interface,

(23)

Apˆ

endice C

Aspectos sobre futuros melhoramento

da interface

Esta interface sendo uma vers˜ao original, possui alguns problemas, e aspectos que podem ser

me-lhorados nomeadamente:

• Corrigir o pinout dos reguladores de tens˜ao LM1086-3.3 e LM1086-5.

• Ter a possibilidade atrav´es de interruptores ligar/desligar qualquer tens˜ao de alimenta¸c˜ao (+5V,

+3.3V, +12V e -12V) de modo a economizar energia quando a placa PCI s´o usa algumas dessas

alimenta¸c˜oes, e diminuir o ru´ıdo provocado pelas fontes comutadas.

• Tentar encontrar suportes para circuitos integrados (20 e 8 pinos) que permitisse soldar na camada superior e inferior do PCB, o que permitiria trocar circuitos danificados com facilidade.

• Colocar 4 leds nas sa´ıdas reguladas para saber quais as tens˜oes activas.

• Tentar colocar os jumpers em locais mais acess´ıveis.

• Estudar o problema de alimenta¸c˜oes (+5V e GND) separadas para CORE51 e MICROPCI que

gera ru´ıdo nos sinais.

• Verificar se as 4 interrup¸c˜oes podem ser todas agrupadas numa s´o (Sendo Open-Drain), para

diminuir n´umero de sinais necess´arios (4 para 1) analisando por software qual a interrup¸c˜ao que

foi gerada, consultando os registos internos do dispositivo PCI.

• Colocar um Jumper(ou resistˆencia de pull-up) que permite activar/desactivar o sinal de /CLR

(por a n´ıvel l´ogico 0) devido a s´o est´a dispon´ıvel no conector de 20 pinos, e ´e necess´ario estar

desactivo para escrever para a cadeia de shifts registers quando se trabalha com o conector de 40 pinos.

• Por resistˆencia de pull-up nos sinais de controlo PCI (Mesmo nos n˜ao usados) para garantir

valores est´aveis na inicializa¸c˜ao do sistema e quando nenhum agente est´a a escrever para esses

sinais.(Usar arrays de resistˆencias de 2K7Ω, valor das especifica¸c˜oes PCI).

• Colocar conector PCI com todos os pinos, mesmo os n˜ao usados.(Necess´ario usar pistas 12 e

espa¸camento de 8 no m´aximo, o que ´e realiz´avel na FEUP).

• Ter um conector para as alimenta¸c˜oes +12V,-12V,+5V,+3.3V, e GND que permite visualizar os

(24)

• Redimensionar a fonte de alimenta¸c˜ao, para corrente m´axima mais baixa (1A parece ser mais

que suficiente para a maioria das placas), e colocar as fontes comutada a entrada de modo a n˜ao

sobrecargar o regulador de 5V, tendo mais dois reguladores de tens˜ao +12V e -12V na sa´ıda da

fonte comutada.

• Espalhar condensador pelas alimenta¸c˜oes dos circuitos integrados, e do barramento PCI, para

diminuir o ru´ıdo.

Experiˆencia adquirida na montagem da interface:

• Antes de colocar os componentes para soldar, por o verniz, e deixar tempo suficiente para este

secar! Conv´em ser num s´ıtio com poucas poeiras, e evitar colocar os dedos em cima dessa at´e

estar completamente seco.

• Na fase de projecto n˜ao esquecer de alargar os “Pads” suficientemente para poder furar e ainda

sobrar cobre a volta do pino para este poder ser soldado.

• Na fase de projecto, ter o cuidado na disposi¸c˜ao dos componentes, no aspecto em que estes

dever˜ao ser soldados com um ferro de soldar, e o espa¸co entre estes pode dificultar esta tarefa.

• Com componentes SMD, verificar sempre o espa¸co ocupado pelo componente e se pode ou n˜ao

Referências

Documentos relacionados

Um sinal da melhoria esperada já é visível no número de anos necessários para a conclusão de estudos dos estudantes graduados que, em 2015/2016, passou dos 6 anos registados nos

[r]

Corpo isolante em cerâmica técnica; terminais em liga de cobre com tratamento de superfície que garante baixas resistências de contato; elemento fusível interno construído em

Artigo 7º - Em razão da política de investimento definida na forma deste regulamento, sujeita-se o FUNDO e os FIFEs, em especial, aos seguintes riscos: a) Risco de

tomar o trabalho como princípio educativo implica em desenvolver um percurso educativo em que estejam presentes e articuladas as duas dimensões, teórica e prática,

Caso você esteja em alguma das situações abaixo, converse com seu médico, pois estas situações apresentam risco especial para possíveis reações anafiláticas

Em porcelana da China, decoração azul e branca com animais e objetos, estrutura em madeira exótica entalhada e vazada com elementos florais e pássaros. Sinais

O Indicador “Alunos que não tiveram reprovação” revelou que a maioria dos beneficiários 69,93 %(2019.1) e 73,65 %(2019.2) não apresentou reprovação alguma no semestre indicado,