Intel_80186
[Wikipedia|▼Menu]

80186
生産時期1982年から2007年9月28日まで
生産者Intel, AMD, 富士通, シーメンス
CPU周波数6 MHz から 25 MHz
FSB周波数6 MHz から 25 MHz
命令セットx86 (16ビット)
パッケージ

68ピン PLCC
68ピン LCC
100ピン PQFP
68ピン PGA
前世代プロセッサIntel 8088
次世代プロセッサIntel 80188
トランジスタ55000
コプロセッサIntel 8087, Intel 80187
テンプレートを表示

Intel 80186(インテル 80186)は、インテル1982年6月に発表した、主として組み込みシステム向けのマイクロプロセッサ、ないしマイクロコントローラである。
特徴

同年2月に発表されていた80286リアルモードと同様に、11個の命令が追加されている。しかし、80286以降のチップとは異なり、命令セットアーキテクチャの大幅な拡張はなく、8086と同世代のアーキテクチャである。コアの拡張ではなく、周辺IC(クロックジェネレータ、割り込みコントローラ、タイマ、DMAC、チップセレクタ)をオンダイに組み込んでいることから、性格的にはマイクロコントローラに近く、組み込みシステム向けの特徴を備える。

一部命令の実行クロック数が削減されることにより、同一クロックで動作するi8086と比較して、約1.3倍程度の性能があるとされる(命令による)。Intel 80186 裏面

写真の独特なパッケージ形状は CLCC(セラミック・リードレス・チップ・キャリア)と称されるもので、専用のソケットを用いなければ基板に実装できない。後に PLCC・QFP・PGA など他のパッケージも供給されるに伴い、パッケージ形状がそれぞれ R(CLCC)・ N(PLCC)・ S(QFP)・ A(PGA)とチップ名の先頭で区別された。

もっとも、IBM PC等で使用されているDMAC等とは互換性が無いため、パーソナルコンピュータ(PC)では、部品点数削減が重要なブック型パソコンで使用された程度である。

なお、同時期にNECが8086互換プロセッサとして展開していたVシリーズの中では、V35/V25が機能的に酷似している。
追加または仕様変更された命令

先行する80286に追加されていた新たな命令のうち、プロテクトモードや80287に関連しない汎用の命令11個[注 1]が80186にも採用された。これらはもともと286命令の一部であるが、数字的に186より大きい数字のプロセッサで使用できるようになったことから、結果的に「186命令」などとされることもある。ENTER … Make stack frame for procedureLEAVE … High level procedure exitPUSHA … Push all general registersPOPA … Pop all general registersBOUND … Check array index against boundsINS … Input stringINSB … Input string byteINSW … Input string wordOUTS … Output stringOUTSB … Output string byteOUTSW … Output string word

このほか80186/80286では以下の10命令[注 2][注 3]に対しても、既存の命令に対してアドレッシングモードが追加されている。いずれもオペランドにイミディエイト(即値)が使えるようになった[注 4]。なお、シフト/ローテイト命令ではビット数として指定できる有効な値が31以下に変更されており、それより大きな値を指定しても下位5ビット分しか認識されなくなった[注 5]。IMUL Integer multiplicationPUSH Push word onto stackRCL Rotate left through carryRCR Rotate right through carryROL Rotate leftROR Rotate rightSAL Shift arithmetic leftSHL Shift left logicalSAR Shift arithmetic rightSHR Shift right logical

また、8086では8087命令の使用中はWAIT命令でCPUを止めておかなければならなかった[注 6]が、80186では自動的にタイミングが調整されるようになり、8087命令の前に必ずしもWAIT命令を入れる必要はなくなった。
その他の80186シリーズ
80188
外部データバス幅が8ビットのCPU。8086に対する8088にあたる。
18677
16MBのメモリを扱えるように機能拡張したもの。富士通、インテルジャパン共同開発。
80C186XL/80C188XL
80186/80188をCMOS化し高クロック (16MHz) 低消費電力化したもの
80C186Ex/80C188Ex
シリアルインターフェイス等の周辺ICをさらに追加し、3V動作、パワーマネジメント機能を追加。
脚注

注釈^ INS, OUTSはオペランドでバイトかワードを指定させる表記法で実際にはそれぞれINSBかINSWおよびOUTSBかOUTSWと同じものであるため実質9命令。
^ ただしSALとSHLは全く同じ動作なので、実質9命令。
^ PUSH imm8のオペコードは6Ah、PUSH imm16は68hとなっており、マシン語レベルでみるとこれらも新命令である。
^ 8086でも1ビットのシフト/ローテイト命令はある。複数ビットのシフト/ローテートを行うには8086では一度シフト・ローテートするビット数をレジスタに入れる必要があったが、80186,80286では命令の即値オペランドで指定できるようになった。
^ V30は一般的に80186の命令互換とされるが、この変更は適用されておらず、8086互換の挙動になる。例えばシフト命令で31を超えるような大きな値を指定すると、8086やV30では演算結果が0になるが、80186/80286以降では32で割った余り(剰余)の分だけしかシフトされないという違いが生じる。この挙動の違いは上記ENTER命令の第2オペランドについても同様で、80186(以降)では下位5ビット分しか使われないが、V30ではそのような制限は無い。
^ 通常、アセンブラが自動的にWAIT命令を入れる。

参考文献

成田佳應、『80x86/x87ハンドブック』、ナツメ社、1995年。

関連項目

x86

Intel 8086

Intel 80286

Intel 80386

FM-16β - シリーズの最初の機種は本CPUを搭載している。










インテルのマイクロプロセッサ


次ページ
記事の検索
おまかせリスト
▼オプションを表示
ブックマーク登録
mixiチェック!
Twitterに投稿
オプション/リンク一覧
話題のニュース
列車運行情報
暇つぶしWikipedia

Size:23 KB
出典: フリー百科事典『ウィキペディア(Wikipedia)
担当:undef