De acordo com a página da Wikipedia no PCI Express , os slots PCI-e 1X têm posições de 18 pinos em duas faixas (portanto, 36 pinos) e as posições 5-9 representam SMBus e JTAG.
Gostaria de conectar um µC como um dispositivo SMBus (essencialmente I²C) e compreendo os requisitos adicionais do protocolo de mensagens, mas não tenho exatamente certeza com quais pinos devo fazer interface.
Posso ver pinos para SMCLK, SMDAT, TCK, TDI, TMS, TRST, TDO, WAKE, PERST, PRSNT1, PRSTN2, além de várias coisas específicas da PCI. Sei que os pinos do PRSNT precisam estar em curto e que existem suprimentos de + 12V e + 3,3V para o dispositivo, mas o resto é um pouco confuso. Normalmente, com o I²C, eu pensaria em SDA e SCL, mas os pinos que estou vendo aqui parecem mais com o tipo de interface que eu esperaria do SPI, com pinos de dados de entrada e saída separados e seleção de dispositivo. Esse é o bit JTAG e eu deveria estar apenas olhando para SMCLK / SMDAT?
Então, minha pergunta é dupla:
- Com quais pinos devo me preocupar?
- Preciso fazer algo mais do que saltar os pinos do PRSNT1 / PRSNT2 para obter o registro do dispositivo? Ou seja, posso ignorar com segurança tudo, menos a interface SMBus? Na verdade, eu preciso marcar a placa como presente com esses pinos ou é apenas para dispositivos que utilizam o barramento PCI?
Desculpas se esta parecer uma pergunta bastante trivial - sou muito mais especialista em software do que em hardware.
Respostas:
SMCLK e SMDAT são o relógio SMB e as conexões de dados.
TCK, TDI, TMS, TRST e TDO são as conexões JTAG.
Os pinos PRSNT1 e PRSNT2 estão lá para informar ao host (hardware da placa-mãe e sistema operacional) quantas faixas do PCIe você usará. Como você realmente não pretende usar as faixas de alta velocidade, duvido que elas sejam relevantes. Não haverá drivers pré-existentes para o que você está fazendo, portanto, "registrar" o painel não será muito significativo. Mas provavelmente seria bom reduzi-los de qualquer maneira, apenas para informar ao sistema que a placa está lá.
fonte