΢»úÔ­ÀíÓë½Ó¿Ú¼¼ÊõʵÑ鱨¸æ ÏÂÔØ±¾ÎÄ

POP DS

IRET £»¼ì²âÊÇ·ñÓмü°´Ï³ÌÐò BREAK PROC NEAR PUSH DS

MOV AH,06H MOV DL,0FFH INT 21H JE POP

RETURN DS

CLI £»»Ö¸´ÖÐ¶ÏÆÁ±ÎÃüÁî×Ö MOV AL,MKBAK

OUT 0A1H,AL£»»Ö¸´ÖжÏÈë¿ÚµØÖ· MOV AX,0000H MOV ES,AX

MOV DI,01CCH £»INT 73H,01CCH=73H*4£¬¸ù¾ÝÖжϺÅÐÞ¸Ä MOV AX,IPBAK CLD STOSW

MOV AX,CSBAK

STOSW

MOV DX,INTCSR_BYTE1 MOV AL,00H OUT DX,AL STI

MOV AX,4C00H INT 21H RETURN:POP DS RET BREAK ENDP CODE ENDS END START

ËÄ£®ÊÕ»ñÌå»á¡£

ʵÑéÖпªÊ¼Ê¹ÓûúÏä²¢ÐнӿڲÙ×÷£¬ÔÚDOS½çÃæÏ²Ù×÷¡£ÔÚÀÏʦÒѸøµÄ³ÌÐò´úÂëµÄ»ù´¡ÉÏ£¬Ð޸Ķ˿ڵØÖ·£¬ÔËÐгÌÐò¡£¶ÔÀíÂÛ֪ʶµÄÈÏʶ»¹²»¹»Éî¿Ì£¬Êµ¼Ê²Ù×÷ÆðÀ´ÂÔÏÔËÀ°å£¬Ò²³öÏÖÁËЩÎÊÌ⣬±ÈÈç¶Ë¿ÚµØÖ·Ð޸IJ»ÕýÈ·£¬Á¬ÏßûÓÐÒ»Ò»¶ÔÓ¦µÈ³öÏÖÔËÐÐʧ°Ü¡£ÔÚÐ޸ĺó²ÅÕý³£ÔËÐС£½ñºó³ýÁ˼ӽôÀíÂÛµÄѧϰΪ»¹ÐèÖð²½ÍêÉÆ×Ô¼ºµÄʵ¼ù²Ù×÷ϰ¹ß£¬Ìá¸ß×Ô¼ºµÄѧϰÄÜÁ¦¡£

ʵÑé°Ë¡¢8254¶¨Ê±¼ÆÊýÆ÷Ó¦ÓÃ

Ò»£®ÊµÑéÄÚÈÝ

1.¼ÆÊýÓ¦ÓÃʵÑ飺±àд³ÌÐò£¬Ó¦ÓÃ8254µÄ¼ÆÊý¹¦ÄÜ£¬Óÿª¹ØÄ£Äâ¼ÆÊý¡£Ê¹Ã¿µ±°´¶¯¿ª¹Ø

29

KK1Îå´Îºó£¬²úÉúÖжϣ¬²¢ÔÚÆÁÄ»ÉÏÏÔʾһ¸ö×Ö·û¡°M¡±¡£

2.¶¨Ê±Ó¦Óãº×Ô¼º±àд³ÌÐò£¬Ó¦ÓÃ8254µÄ¶¨Ê±¹¦ÄÜ£¬½«ÆÁÄ»Éè¼ÆÎªÒ»¸öÃë±í¡£ 3.µç×Ó·¢Éù£º×Ô¼º±àд³ÌÐòÈÃʵÑé×°ÖÃÉϵÄÑïÉùÆ÷ºÍPC»úÉϵÄÑïÉùÆ÷³ª¸è¡£ ¶þ£®·ÖÎöÉè¼ÆË¼Ïë £¨Ò»£©ÊµÑéÔ­Àí

8254ÊÇIntel¹«Ë¾Éú²úµÄ¿É±à³Ì¼ä¸ô¶¨Ê±Æ÷¡£ÊÇ8253µÄ¸Ä½øÐÍ£¬±È8253¾ßÓиüÓÅÁ¼µÄÐÔÄÜ¡£8254¾ßÓÐÒÔÏ»ù±¾¹¦ÄÜ£º

£¨1£©ÓÐ3¸ö¶ÀÁ¢µÄ16λ¼ÆÊýͨµÀ£»

£¨2£©Ã¿¸ö¼ÆÊýÆ÷¿É°´¶þ½øÖÆ»òÊ®½øÖÆ£¨BCD£©¼ÆÊý£» £¨3£©Ã¿¸ö¼ÆÊýÆ÷¿É±à³Ì¹¤×÷ÔÚ6ÖÖ²»Í¬¹¤×÷·½Ê½£»

£¨4£©Ã¿¸ö¼ÆÊýÆ÷ÔÊÐíµÄ×î¸ß¼ÆÊýƵÂÊΪ10MNZ£¨8253Ϊ2MHZ£©£»

£¨5£©ÓжÁ»ØÃüÁ8253ûÓУ©£¬¿ÉÒÔ¶Á³öµ±Ç°¼ÆÊýµ¥ÔªµÄÄÚÈݺÍ״̬¼Ä´æÆ÷ÄÚÈÝ£»

13-

ͼ13-1ÊÇ8254µÄÄÚ²¿½á¹¹¿òͼºÍ¹Ü½Åͼ¡£ËüÊÇÓÉÓëCPUµÄ½Ó¿Ú¡¢ÄÚ²¿¿ØÖƵç·ºÍÈý¸ö¼ÆÊýÆ÷×é³É¡£

Èý¸ö¶ÀÁ¢µÄ¼ÆÊýÆ÷£¬Ã¿¸ö¼ÆÊýÆ÷µÄ½á¹¹ÍêÈ«Ïàͬ£¬Èçͼ13-2¡£

Êý¾Ý×ÜÏß 3¸öÒý½Ç£ºGATEi¡ª¡ªÃÅ¿ØÐźÅÊäÈë¶Ë CLKi¡ª¡ª¼ÆÊýÂö³åÊäÈë¶Ë ¼ÆÊý³õÖµ¼Ä´æÆ÷ OUTi¡ª¡ªÐźÅÊä³ö¶Ë

GATEiOUTi 16λ¼õ1¼ÆÊýÆ÷ CLKi

Êä³öËø´æÆ÷ ͼ13-2 ¼ÆÊýÆ÷½á¹¹Ê¾Òâͼ

1¡¢¹¤×÷¹ý³Ì£º

£¨1£© ³õʼ»¯Ê±£¬³ÌÐòÔ±½«¼ÆÊý³õֵдÈë¼ÆÊý³õÖµ¼Ä´æÆ÷£¬×Ô¶¯ËÍÈë16λ¼õ1¼ÆÊýÆ÷¡£¼ÆÊý³õÖµ£Î£½£æCLKi¡Â£æOUTi

£¨2£© µ±GATEi£½1ʱ£¬Ã¿Ò»¸öCLKiÐźŵÄϽµÑØÊ¹¼õ1¼ÆÊýÆ÷¼õ1£¬Ëø´æÆ÷ËæÖ®±ä»¯¡£ £¨3£© µ±¼ÆÊýÖµ¼õµ½¹æ¶¨ÖµÊ±£¬OUTi¶Ë²úÉúÊä³öÐźš£ 2¡¢8254µÄ¹¤×÷·½Ê½£º

·½Ê½0¡ª¡ª¼ÆÊý½áÊøÊä³öÕýÔ¾±äÐźţ¨¿É×÷ΪÖжÏÇëÇóÐźţ©

30

·½Ê½1¡ª¡ªµ¥Âö³å·¢ÉúÆ÷£¨ÐγɸºÂö³å£¬¿í¶È=N¡ÁCLKÂö³åÖÜÆÚ£© ·½Ê½2¡ª¡ª·ÖƵÆ÷£¨Êä³ö¹Ì¶¨ÆµÂʵÄÂö³å£©

ͼ 13-3 ·½Ê½2²¨ÐÎͼ 13-4 ·½Ê½3¼ÆÊýÖµÎªÆæÊýʱµÄ²¨ÐÎ

·½Ê½3¡ª¡ª·½²¨·¢ÉúÆ÷

·½Ê½4¡ª¡ªÈí¼þ´¥·¢µÄµ¥Âö³å·¢ÉúÆ÷£¨Êä³ö¸ºÂö³å£¬¿í¶ÈΪһ¸öCLKÖÜÆÚ£© ·½Ê½5¡ª¡ªÓ²¼þ´¥·¢µÄµ¥Âö³å·¢ÉúÆ÷£¨Êä³ö¸ºÂö³å£¬¿í¶ÈΪһ¸öCLKÖÜÆÚ£© 3¡¢8254¶Ë¿ÚµØÖ·£º

µ±CS£½0ʱ£¬µØÖ·×ÜÏßµÄA1 A0×éºÏ£¨00¡«11£©£¬È·¶¨Ñ¡Ôñ0#¡¢1#¡¢2#¼ÆÊýÆ÷¼°¿ØÖƼĴæÆ÷

A1A0£½00£¬Ñ¡ÖÐ0# ¼ÆÊýÆ÷¶ÔÓ¦¶Ë¿ÚµÄÆ«ÒÆµØÖ·ÊÇ£º 40H A1A0£½01£¬Ñ¡ÖÐ1# ¼ÆÊýÆ÷ 41H A1A0£½10£¬Ñ¡ÖÐ2# ¼ÆÊýÆ÷ 42H A1A0£½11£¬Ñ¡ÖпØÖƼĴæÆ÷ 4¡¢8254µÄ¿ØÖÆ×Ö£º

43H

¿ØÖÆ×ÖÓÐÁ½¸ö£º·½Ê½¿ØÖÆ×Ö¹²ÓÃÒ»¸öµØÖ·£¬ÓɱêʶλÀ´Çø·Ö¡£

¶Á»Ø¿ØÖÆ×Ö

·½Ê½¿ØÖÆ×ÖÓÃÀ´ÉèÖüÆÊýÆ÷µÄ¹¤×÷·½Ê½£¬ÆäÃüÁî¸ñʽÈç±í13-1Ëùʾ¡£

¶Á»Ø¿ØÖÆ×Ö¸ñʽÈç±í13-2Ëùʾ¡£µ±¶Á»Ø¿ØÖÆ×ÖµÄD4λΪ0ʱ£¬ÓɸöÁ»Ø¿ØÖÆ×ÖD1~D2λָ¶¨µÄ¼ÆÊýÆ÷µÄ״̬¼Ä´æÆ÷ÄÚÈݽ«±»Ëø´æµ½×´Ì¬¼Ä´æÆ÷ÖС£×´Ì¬×Ö¸ñʽÈç±í13-3Ëùʾ¡£ 5¡¢8254³õʼ»¯±à³Ì²½Öè

Ò»²½£ºÏò¿ØÖƼĴæÆ÷дÈë¿ØÖÆ×Ö£¬È·¶¨Ê¹ÓõļÆÊýÆ÷¼°¹¤×÷·½Ê½¡£ ¶þ²½£ºÏòʹÓõļÆÊýÆ÷дÈë¼ÆÊý³õÖµ¡£

13-1

13-

001 = Ñ¡ÖмÆÊýÆ÷

31

0

010 = Ñ¡ÖмÆÊýÆ÷

13-3

£¨¶þ£©ÊµÑé˵Ã÷¼°²½Öè

1¡¢È·¶¨8254¶Ë¿ÚµØÖ·

Ö´ÐÐPCI_BIOS.EXE£¬»ñȡʵÑéÓÃPCI×ÜÏßÀ©Õ¹¿¨·ÖÅäµÄµØÖ·¿Õ¼ä¼°ÖжÏÇëÇóÏß¡£È·¶¨8254оƬËùʹÓõĶ˿ڵØÖ·£º

±¾ÏµÍ³ÖÐI/O²¿·ÖʵÑéʹÓõÄÊÇPCI×ÜÏßÀ©Õ¹¿¨ÉêÇëµÄµÚÈý¸öI/O¿Õ¼ä£¨¼´BASE 2£¬¼ÙÉèΪ0C000H£©¡£¸÷I/O½Ó¿ÚоƬµÄ¶Ë¿ÚµØÖ·¶¨ÒåΪ£º

BASE 2µÄÊ×µØÖ·+ ¸÷¶Ë¿ÚµÄÆ«ÒÆµØÖ·

8254¶Ë¿ÚµÄÆ«ÒÆµØÖ·¶¨ÒåΪ£º

¼ÆÊýÆ÷0£º40H ¼ÆÊýÆ÷1£º41H ¼ÆÊýÆ÷2£º42H ¿ØÖƶ˿ڣº43H CPU·ÃÎÊ8254¶Ë¿ÚµØÖ·Îª£º

¼ÆÊýÆ÷0£º0C040H ¼ÆÊýÆ÷1£º0C041H ¼ÆÊýÆ÷2£º0C042H ¿ØÖƶ˿ڣº0C043H

2¡¢¼ÆÊýÓ¦ÓÃʵÑé

±àд³ÌÐò£¬½«8254µÄ¼ÆÊýÆ÷0ÉèÖÃΪ·½Ê½3£¬¼ÆÊýֵΪʮ½øÖÆ5£¬ÓÃ΢¶¯¿ª¹ØKK1×÷ΪCLK0ʱÖÓ£¬OUT0Á¬½ÓIRQ£¬Ã¿µ±KK1°´¶¯5´Îºó²úÉúÖжÏÇëÇó£¬ÔÚÖжϷþÎñ³ÌÐòÖÐÍê³ÉÆÁÄ»ÉÏÏÔʾ×Ö·û¡°M¡±¡£²Î¿¼½ÓÏßͼÈçͼ13-5Ëùʾ¡£

ʵÑé²½ÖèÈçÏ£º

£¨1£© Ö´ÐÐPCI_BIOS.EXEÎļþ£¬È·¶¨ÊµÑé×°ÖÃÖÐ8254µÄ¸÷¶Ë¿ÚµØÖ·¡£°´ÊµÑéÄÚÈݱàд³ÌÐò£¨²Î¿¼³ÌÐò¼ûºó£©£¬±àÒë¡¢Á¬½Ó£¬Éú³ÉÖ´ÐÐÎļþ¡£ £¨2£© Éè¼ÆÊµÑéÏß·ͼ£¬Íê³ÉÏß·Á¬½Ó¡£

£¨3£© ´ò¿ªÊµÑéÏäµçÔ´£¬ÔËÐгÌÐò£¬°´¶¯KK1΢¶¯¿ª¹Ø£¬¹Û²ìÊÇ·ñ°´¶¯5´ÎºóÆÁÄ»ÏÔʾ×Ö

·û¡°M¡±¡£

£¨4£© ·ÖÎö¸Ã³ÌÐò½á¹¹£¬Àí½âÈçºÎ¶Ô8254³õʼ»¯£¬ÈçºÎʵÏÖÖжϷþÎñ¡£ £¨5£© Ð޸ļÆÊý³õÖµ£¬´Ó¶øÊµÏÖ²»Í¬ÒªÇóµÄ¼ÆÊý¡£

13 -

3¡¢¶¨Ê±Ó¦ÓÃʵÑ顪¡ªÃë±íµÄÉè¼Æ

32