CPU Design HOW-TO <!-- chapt change CPU Design HOW-TO --> <author>Al Dev (Alavoor Vasudevan) <!-- <htmlurl url="mailto:alavoor@yahoo.com" name="alavoor@yahoo.com"> --> <tt/alavoor@yahoo.com/ <date>v11.0, 26 Feb 2001 <trans>翻訳:瀬戸口 崇 <tt/setzer@mx3.tiki.ne.jp/ と JF Project <tdate>翻訳日:2001年 5月 31日 <abstract> <!-- CPU is the "brain" of computer and is a very vital component of computer system and is like a "cousin brother" of operating system (Linux or Unix). This document helps companies, businesses, universities and research institutes to design, build and manufacture CPUs. Also the information will be useful for university students of U.S.A and Canada who are studying computer science/engineering. The document has URL links which helps students understand how a CPU is designed and manufactured. Perhaps in near future there will GNU/GPLed CPU running Linux, Unix, Microsoft Windows, Apple Mac and BeOS operating systems!! --> CPU はコンピュータの &dquot;頭脳&dquot; であり、コンピュータシステムに絶対不可欠な構成部品です。 また、Linux や UNIX といったオペレーティングシステムと非常に密接な関係があります。 この文書は、団体や企業、大学そして調査会社が CPU を設計開発し、製造するのに役立ちます。 コンピュータサイエンスや計算機工学を学んでいる学生にも役立つでしょう。 この文書には、コンピュータがどのように設計され製造されているのかを学生が理解するのに役立つ URL リンクをたくさん含まれています。 きっと近い将来には GNU/GPL ライセンスに基づいた CPU が登場し、 Linux や UNIX, Microsoft Windows, Apple Machintosh, BeOS などの OS を使うことができる日がくることでしょう! </abstract> <!-- Table of contents --> <toc> <!-- Begin the document --> <!-- ******************************************* ************ End of Section *************** ******************************************* <chapt>Introduction --> <!-- <sect>Introduction --> <sect>序章 <p> <!-- This document provides you comprehensive list of URLs for CPU Design and fabrication. Using this information students, companies, universities or businesses can make new CPUs which can run Linux/Unix operating systems. --> この文書では CPU の設計と構成についての URL の分かりやすい一覧が紹介されています。 この情報を使えば、学生、企業、大学、起業家たちが、Linux や UNIX を走らせる事のできる 新しい CPU を作ることが可能です。 <!-- In olden days, chip vendors were also the IP developers and the EDA tools developers. Nowadays, we have specialized fab companies (TSMC <url url="http://www.tsmc.com">), IP companies (ARM <url url="http://www.arm.com">, MIPS <url url="http://www.mips.com">, Gray Research LLC <url url="http://cnets.sourceforge.net/grllc.html"> ), and tools companies ( Mentor <url url="http://www.mentor.com">, Cadence <url url="http://www.cadence.com">, etc.), and combinations of these (Intel). You can buy IP bundled with hardware (Intel), bundled with your tools (EDA companies), or separately (IP providers). --> 昔はチップベンダー達は同時に IP の開発者でもあり、EDA ツールの開発者でもありました。 最近ではそれぞれの分野に特化した専門の会社があります。それらは以下のようなものです。 組立、構成 (FAB) 業者 (TSMC <url url="http://www.tsmc.com">)、 IP企業 (ARM <url url="http://www.arm.com">, MIPS <url url="http://www.mips.com">, Gray Research LLC <url url="http://cnets.sourceforge.net/grllc.html"> )、 そしてツール (EDA) ベンダ (Mentor <url url="http://www.mentor.com">, Cadence <url url="http://www.cadence.com"> など)、 そして、これらを総合した企業 (Intel)。 あなたは IP を、ハードウェアという形で (Intel 等から) 購入することも、ツールという形で (EDA ベンダから)購入することもできますし、IP そのものを単品で (IP 企業から) 購入することもできます。 <!-- Enter the FPGA vendors (Xilinx <url url="http://www.xilinx.com">, Altera <url url="http://www.altera.com">). They have an opportunity to seize upon a unique business model. --> FPGA ベンダーのサイト (Xilinx <url url="http://www.xilinx.com">や、 Altera <url url="http://www.altera.com">)も見てください。 そこには独自のビジネスモデルを利用する機会があります。 <!-- VA Linux systems <url url="http://www.valinux.com"> builds the entire system and perhaps in future will design and build CPUs for Linux. --> VA Linux systems <url url="http://www.valinux.com">は完全なシステムを構築しており、おそらく将来 Linux のための CPU を設計するでしょう。 <!-- Visit the following CPU design sites: <itemize> <item> FPGA CPU Links <url url="http://www.fpgacpu.org/links.html"> <item> FPGA Main site <url url="http://www.fpgacpu.org"> <item> OpenRISC 1000 Free Open-source 32-bit RISC processor IP core competing with proprietary ARM and MIPS is at <url url="http://www.opencores.org"> <item> Open IP org <url url="http://www.openip.org"> <item> Free IP org - ASIC and FPGA cores for masses <url url="http://www.free-ip.com"> </itemize> --> 以下の CPU 設計に関するサイトも見てください。 <itemize> <item> FPGA CPU Links <url url="http://www.fpgacpu.org/links.html"> <item> FPGA Main site <url url="http://www.fpgacpu.org"> <item> OpenRISC 1000 - 独占的な ARM や MIPS に対抗し得るフリーでオープンソースの 32-bit RISC プロセッサの IP コア<url url="http://www.opencores.org"> <item> Open IP org <url url="http://www.openip.org"> <item> Free IP org - 大衆向けの ASIC と FPGA コア <url url="http://www.free-ip.com"> </itemize> (訳注:FPGA...Field Programmable Gate Array の略。プログラム可能なプロセッサの事。ASIC...Application Specific Integrated Circuit の略。特定の用途の為に設計された専用のカスタム IC の事。) <!-- ******************************************* ************ End of Section *************** ******************************************* <chapt> What is IP ? --> <!-- <sect> What is IP ? --> <sect> IP とは何か ? <p> <!-- What is IP ? IP is short for <bf>Intellectual Property</bf>. More specifically, it is a block of logic that can be used in making ASIC's and FPGA's. Examples of "IP Cores" are, UART's, CPU's, Ethernet Controllers, PCI Interfaces, etc. In the past, quality cores of this nature could cost anywhere from US$5,000 to more than US$350,000. This is way too high for the average company or individual to even contemplate using - Hence, the Free-IP project. --> IP とは何でしょうか? IP とは <bf>Intellectual Property(知的財産)</bf> の略です。 本書の場合、具体的には ASIC や FPGA を作る時に使われる一通りのロジックといった知的財産 (IP)の事です。 &dquot;IP コア&dquot; の例としては UART, CPU, Ethernet コントローラ, PCI インタフェースなど のものがあります。 以前は、この種の良質な IP コアは 5,000ドルから350,000ドル以上することもありました。 ごく普通の企業や個人にとって、使用を考えることすらないほど法外なものです。 そこで、Free-IP プロジェクトです。 <!-- Initially the Free-IP project will focus on the more complex cores, like CPU's and Ethernet controllers. Less complex cores might follow. The Free-IP project is an effort to make quality IP available to anyone. --> Free-IP プロジェクトはまず CPU や Ethernet コントローラのようなより複雑なコアに注目します。 比較的複雑でないコアもそれに続くかも知れません。 Free-IP プロジェクトとは、誰でも利用可能な良質な IP コアを作ろうという努力なのです。 <!-- Visit the following sites for IP cores - <itemize> <item> Open IP org <url url="http://www.openip.org"> <item> Free IP org - ASIC and FPGA cores for masses <url url="http://www.free-ip.com"> <item> FPGA Main site <url url="http://www.fpgacpu.org"> </itemize> --> これらの IP コア に関するサイトを訪れてみてください。 <itemize> <item> Open IP org <url url="http://www.openip.org"> <!-- <item> Free IP org - ASIC and FPGA cores for masses <url url="http://www.free-ip.com"> --> <item> Free IP org - 大衆向けの ASIC と FPGA コア <url url="http://www.free-ip.com"> <item> FPGA Main site <url url="http://www.fpgacpu.org"> </itemize> <!-- ******************************************* ************ End of Section *************** ******************************************* --> <!-- <sect1> Free CPU List <label id="freecpu"> --> <sect1> フリー CPU の一覧 <label id="freecpu"> <p> <!-- Here is the list of Free CPUs available or curently under development - --> すでに利用可能、あるいは現在開発中のフリーの CPU を一覧で紹介します。 <itemize> <!-- <item> F-CPU 64-bit Freedom CPU <url url="http://www.f-cpu.org"> mirror site at <url url="http://www.f-cpu.de"> --> <item> F-CPU 64-bit Freedom CPU <url url="http://www.f-cpu.org"> ミラーサイト - <url url="http://www.f-cpu.de"> <p> <!-- <item> European Space Agency - SPARC architecture LEON CPU <url url="http://www.estec.esa.nl/wsmwww/leon"> --> <item> European Space Agency - SPARC アーキテクチャ LEON CPU <url url="http://www.estec.esa.nl/wsmwww/leon"> <item> European Space Agency - ERC32 SPARC V7 CPU <url url="http://www.estec.esa.nl/wsmwww/erc32"> <!-- <item> Atmel ERC32 SPARC part # TSC695E <url url="http://www.atmel-wm.com/products"> click on Aerospace=>Space=>Processors --> <item> Atmel ERC32 SPARC part # TSC695E <url url="http://www.atmel-wm.com/products"> Aerospace=>Space=>Processors の順にクリックしてください。 <p> <!-- <item> Sayuri at <url url="http://www.morphyplanning.co.jp/Products/FreeCPU/freecpu-e.html"> and manufactured by Morphy Planning Ltd at <url url="http://www.morphyone.org"> and feature list at <url url="http://ds.dial.pipex.com/town/plaza/aj93/waggy/hp/features/morphyone.htm"> and in Japanese language at <url url="http://www.morphyplanning.or.jp"> --> <item> Sayuri は <url url="http://www.morphyplanning.co.jp/Products/FreeCPU/freecpu-e.html"> Morphy Planning Ltd <url url="http://www.morphyone.org"> によって作られています。 機能リストは <url url="http://ds.dial.pipex.com/town/plaza/aj93/waggy/hp/features/morphyone.htm"> 日本語のページは <url url="http://www.morphyplanning.or.jp"> にあります。 <p> <!-- <item> OpenRISC 1000 Free 32-bit processor IP core competing with proprietary ARM and MIPS is at <url url="http://www.opencores.org/cores/or1k"> --> <item> OpenRISC 1000 - 独占的な ARM や MIPS に対抗し得るフリーでオープンソースの 32-bit RISC プロセッサの IP コア <url url="http://www.opencores.org"> <!-- <item> OpenRISC 2000 is at <url url="http://www.opencores.org"> --> <item> OpenRISC 2000 は <url url="http://www.opencores.org"> <!-- <item> STM 32-bit, 2-way superscalar RISC CPU <url url="http://www.asahi-net.or.jp/~uf8e-itu"> --> <item> STM 32-bit, 双方向スーパースカラ RISC CPU <url url="http://www.asahi-net.or.jp/~uf8e-itu"> <p> <!-- <item> Green Mountain - GM HC11 CPU Core is at <url url="http://www.gmvhdl.com/hc11core.html"> --> <item> Green Mountain - GM HC11 CPU Core は <url url="http://www.gmvhdl.com/hc11core.html"> <!-- <item> Open-source CPU site - Google Search "Computers>Hardware>Open Source" --> <item> Open-source CPU site - Google 検索のオープンソース CPU サイト &dquot;Computers>Hardware>Open Source&dquot; <url url="http://directory.google.com/Top/Computers/Hardware/Open_Source"> <!-- <item> Free microprocessor and DSP IP cores written in Verilog or VHDL --> <item> Verilog や VHDL で記述されたフリーのマイクロプロセッサーや DSP (デジタル信号処理) のコア <url url="http://www.cmosexod.com"> <!-- <item> Free hardware cores to speed development --> <item> 開発速度を加速するフリーのハードウェアコア <url url="http://www.scrap.de/html/opencore.htm"> <!-- <item> Linux open hardware and free EDA systems --> <item> Linux のオープンハードウェアとフリーの EDA システム <url url="http://opencollector.org"> </itemize> <!-- ******************************************* ************ End of Section *************** ******************************************* --> <!-- <sect1> Commercial CPU List <label id="comcpu"> --> <sect1> 商用 CPU の一覧 <label id="comcpu"> <p> <itemize> <!-- <item> <bf>Russian E2K 64-bit CPU (Very fast CPU !!!) </bf> website : <url url="http://www.elbrus.ru/roadmap/e2k.html">. <bf>ELBRUS</bf> is now partnered (alliance) with Sun Microsystems of USA. --> <item> <bf>ロシア製 E2K 64-bit CPU (非常に高速な CPU です!!!) </bf> ウェブサイト : <url url="http://www.elbrus.ru/roadmap/e2k.html">. <bf>ELBRUS</bf> は米サン・マイクロシステムズと提携しています。 <p> <!-- <item> Korean CPU from Samsung 64-bit CPU original from DEC Alpha <url url="http://www.samsungsemi.com"> Alpha-64bit CPU is at <url url="http://www.alpha-processor.com"> Now there is collaboration between Samsumg, Compaq of USA on Alpha CPU --> <item> 韓国 Samsung製 のDEC Alphaクローン 64-bit CPU <url url="http://www.samsungsemi.com"> Alpha-64bit CPU は <url url="http://www.alpha-processor.com"> 現在 Alpha CPU について Samsung と 米Compaq での協業があります。 <item> Intel IA 64 <url url="http://developer.intel.com/design/ia-64"> <!-- <item> Transmeta crusoe CPU and in near future Transmeta's 64-bit CPU --> <item> Transmeta crusoe CPU と次世代 Transmeta 64-bit CPU --> <url url="http://www.transmeta.com"> <item> Sun Ultra-sparc 64-bit CPU <url url="http://www.sun.com"> or <url url="http://www.sunmicrosystems.com"> <item> MIPS RISC CPUs <url url="http://www.mips.com"> <item> Silicon Graphics MIPS Architecture CPUs <url url="http://www.sgi.com/processors"> <!-- <item> IDT MIPS Architecture CPU <url url="http://www.idt.com"> --> <item> IBM Power PC (motorola) <url url="http://www.motorola.com/SPS/PowerPC/index.html"> <!-- <item> Motorola embedded processors. SPS processor based on PowerPC, M-CORE, ColdFire, M68k, or M68HC cores <url url="http://www.mot-sps.com"> --> <item> Motorola の組み込みプロセッサ PowerPC, M-CORE, ColdFire, M68k, や M68HC コアベースの SPS プロセッサ <url url="http://www.mot-sps.com"> <!-- <item> Hitachi SuperH 64-bit RISC processor SH7750 <url url="http://www.hitachi.com"> sold at $40 per cpu in quantities of 10,000. Hitachi SH4,3,2,1 CPUs <url url="http://semiconductor.hitachi.com/superh"> --> <item> Hitachi SuperH 64-bit RISC processor SH7750 <url url="http://www.hitachi.com"> は 10,000ロットで 1CPU あたり40ドルで販売されています。 Hitachi SH4,3,2,1 CPU <url url="http://semiconductor.hitachi.com/superh"> <item> Fujitsu 64-bit processor <url url="http://www.fujitsu.com"> <!-- <item> HAL-Fujitsu (California) Super-Sparc 64-bit processor <url url="http://www.hal.com"> also compatible to Sun's sparc architecture. --> <item> HAL-Fujitsu (California) Super-Sparc 64-bit processor <url url="http://www.hal.com"> もサンの SPARC アーキテクチャ互換です。 <item> Seimens Pyramid CPU from Pyramid Technologies <!-- 確認要 Siemens? --> <item> Intel X86 series 32-bit CPUs Pentiums, Celeron etc.. <item> AMDs X86 series 32-bit CPUs K-6, Athlon etc.. <!-- <item> National's Cyrix X86 series 32-bit CPUs Cyrix etc..<item> ARC CPUs : <url url="http://www.arccores.com"> --> <item> National's Cyrix X86 シリーズ 32-bit CPU Cyrix など <item> ARC CPUs : <url url="http://www.arccores.com"> <item> QED RISC 64-bit and MIPS cpus : <url url="http://www.qedinc.com/about.htm"> <item> Origin 2000 CPU - <url url="http://techpubs.sgi.com/library/manuals/3000/007-3511-001/html/O2000Tuning.1.html"> <item> NVAX CPU <url url="http://www.research.compaq.com/wrl/DECarchives/DTJ/DTJ700"> and at <url name="mirror-site" url="http://www.digital.com/info/DTJ700"> <!-- <item> Univ. of Mich High-perf. GaAs Microprocessor Project <url url="http://www.eecs.umich.edu/UMichMP"> --> <item> Univ. of Mich High-perf. GaAs(ガリウム砒素) Microprocessor Project <url url="http://www.eecs.umich.edu/UMichMP"> <item> Hyperstone E1-32 RISC/DSP processor <url url="http://bwrc.eecs.berkeley.edu/CIC/tech/hyperstone"> <item> PSC1000 32-bit RISC processor <url url="http://www.ptsc.com/psc1000/index.html"> <item> IDT R/RV4640 and R/RV4650 64-bit CPU w/DSP Capability <url url="http://www.idt.com/products/pages/Processors-PL100_Sub205_Dev128.html"> <item> ARM CPU <url url="http://www.arm.com/Documentation"> <item> Cogent CPUs <url url="http://www.cogcomp.com"> <!-- <item> CPU Info center - List of CPUs sparc, arm etc.. <url url="http://bwrc.eecs.berkeley.edu/CIC/tech"> --> <item> CPU Info center - SPARC や ARM などの CPU の一覧 <url url="http://bwrc.eecs.berkeley.edu/CIC/tech"> <!-- <item> Main CPU site is : Google Search engine CPU site "Computers>Hardware>Components>Microprocessors" <url url="http://directory.google.com/Top/Computers/Hardware/Components/Microprocessors"> --> <item> 主要な CPU サイトは : Google 検索エンジンの CPU サイトから見つけることができます。&dquot;Computers>Hardware>Components>Microprocessors&dquot; <url url="http://directory.google.com/Top/Computers/Hardware/Components/Microprocessors"> </itemize> <!-- Other important CPU sites are at - <itemize> <item> World-wide 24-hour news on CPUs <url url="http://www.newsnow.co.uk/cgi/NewsNow/NewsLink.htm?Theme=Processors"> <item> The computer architecture site is at <url url="http://www.cs.wisc.edu/~arch/www"> <item> ARM CPU <url url="http://www.arm.com/Documentation"> <item> Great CPUs <url url="http://www.cs.uregina.ca/~bayko/cpu.html"> <item> Microdesign resources <url url="http://www.mdronline.com"> </itemize> --> そのほかの重要な CPU サイトは - <itemize> <item> CPU に関する世界のニュース<url url="http://www.newsnow.co.uk/cgi/NewsNow/NewsLink.htm?Theme=Processors"> <item> コンピュータアーキテクチャのサイトは <url url="http://www.cs.wisc.edu/~arch/www"> <item> ARM CPU <url url="http://www.arm.com/Documentation"> <item> Great CPUs <url url="http://www.cs.uregina.ca/~bayko/cpu.html"> <item> Microdesign resources <url url="http://www.mdronline.com"> </itemize> <!-- ******************************************* ************ End of Section *************** ******************************************* <chapt> CPU Museum and Silicon Zoo --> <!-- <sect> CPU Museum and Silicon Zoo --> <sect> CPU Museum と Silicon Zoo <p> <!-- This chapter gives very basics of CPU technology. If you have good technical background then you can skip this entire chapter. --> この章では CPU テクノロジの基本中の基本を取り扱います。 すでに技術的なバックグラウンドをお持ちであれば読み飛ばして頂いて構いません。 <!-- ******************************************* ************ End of Section *************** ******************************************* --> <sect1> CPU Museum <label id="museum"> <p> <!--CPU Museum is at <itemize> <item> Intel CPU Museum <url url="http://www.intel.com/intel/intelis/museum"> <item> Intel - History of Microprocessors <url url="http://www.intel.com/intel/museum/25anniv"> <item> Virtual Museum of Computing <url url="http://www.museums.reading.ac.uk/vmoc"> <item> Silicon Zoo <url url="http://micro.magnet.fsu.edu/creatures/index.html"> <item> Intel - How the Microprocessors work <url url="http://www.intel.com/education/mpuworks"> <item> Simple course in Microprocessors <url url="http://www.hkrmicro.com/course/micro.html"> </itemize> --> CPU Museum は <itemize> <item> Intel CPU Museum <url url="http://www.intel.com/intel/intelis/museum"> <item> Intel - マイクロプロセッサの歴史 <url url="http://www.intel.com/intel/museum/25anniv"> <item> Virtual Museum of Computing <url url="http://www.museums.reading.ac.uk/vmoc"> <item> Silicon Zoo <url url="http://micro.magnet.fsu.edu/creatures/index.html"> <item> Intel - プロセッサはどうやって動くのか <url url="http://www.intel.com/education/mpuworks"> <item> Simple course in Microprocessors <url url="http://www.hkrmicro.com/course/micro.html"> </itemize> <!-- ******************************************* ************ End of Section *************** ******************************************* --> <!-- <sect1> How Transistors work <label id="trans"> --> <sect1> トランジスタはどのように動作するか <label id="trans"> <p> <!-- Microprocessors are essential to many of the products we use every day such as TVs, cars, radios, home appliances and of course, computers. Transistors are the main components of microprocessors. At their most basic level, transistors may seem simple. But their development actually required many years of painstaking research. Before transistors, computers relied on slow, inefficient vacuum tubes and mechanical switches to process information. In 1958, engineers (one of them Intel founder Robert Noyce) managed to put two transistors onto a silicon crystal and create the first integrated circuit that led to the microprocessor. --> マイクロプロセッサは私達が毎日使う TV や自動車、ラジオ、家庭用機器、 そしてもちろんコンピュータなどの多くの製品にとって欠かせないもの となっています。 マイクロプロセッサは主にトランジスタで構成されています。 もっとも基本的なレベルにおいては、トランジスタは単純に見えるかも知れません。 しかしながら、トランジスタの開発には実際何年にもわたる綿密な調査が必要でした。 トランジスタの登場以前は、コンピュータは情報を処理するのに、 遅くて役立たずの真空管と機械的なスイッチ(訳注:リレー)に頼っていました。 1958 年に技術者達は (そのうちの一人は Intel の創設者の Robert Noyce ですが ) 一つのシリコン結晶上に二つのトランジスタをのせる事に成功し、 後にマイクロプロセッサへと導く、最初の集積回路を作りました。 <!-- Transistors are miniature electronic switches. They are the building blocks of the microprocessor which is the brain of the computer. Similar to a basic light switch, transistors have two operating positions, on and off. This on/off, or binary functionality of transistors enables the processing of information in a computer. --> トランジスタは小型の電子スイッチであり、コンピュータの頭脳である マイクロプロセッサの基本要素です。 ごく普通の電灯のスイッチと同じように、トランジスタは ON と OFF の二つの作動位置をもっています。 トランジスタの、この ON/OFF すなわち 2値をもつという機能によって コンピュータは情報を処理する事ができます。 <!-- <bf>How a simple electronic switch works: </bf> --> <bf>電子スイッチの動作原理 </bf> <p> <!-- The only information computers understand are electrical signals that are switched on and off. To comprehend transistors, it is necessary to have an understanding of how a switched electronic circuit works. Switched electronic circuits consist of several parts. One is the circuit pathway where the electrical current flows - typically through a wire. Another is the switch, a device that starts and stops the flow of electrical current by either completing or breaking the circuit's pathway. Transistors have no moving parts and are turned on and off by electrical signals. The on/off switching of transistors facilitates the work performed by microprocessors. --> コンピュータが理解できる唯一の情報は、ON か OFF かの電気信号だけです。 トランジスタを理解する為には、電子スイッチ回路の動作原理を知る 必要があります。 電子スイッチ回路はいくつかの部分で構成されています。 そのうちの一つは、電流が流れる通り道です - 代表的な例は電線です。 もう一つはスイッチ、すなわち電流を止めたり流したりする装置で、これは 回路の通り道をつないだり切り離したりして行ないます。 トランジスタは機械的動作部分をもたず、電気信号で ON/OFF の切替を行なう 事ができます。 トランジスタの ON/OFF 切替によってマイクロプロセッサは仕事をこなして いるのです。 <!-- ******************************************* ************ End of Section *************** ******************************************* --> <!-- <sect1> How a Transistors handles information<label id="transinfo"> --> <sect1> トランジスタはどのように情報を扱うのか<label id="transinfo"> <p> <!-- Something that has only two states, like a transistor, can be referred to as binary. The transistor's on state is represented by a 1 and the off state is represented by a 0. Specific sequences and patterns of 1's and 0's generated by multiple transistors can represent letters, numbers, colors and graphics. This is known as binary notation --> トランジスタの様にたった二つの状態しかもたない物は、2進数であると いえます。 1 がトランジスタの ON 状態を表し、0 が OFF 状態を表します。 複数のトランジスタによって作られる 1 と 0 の特定の順番と組合せで 文字や数字、色そして画像などを表す事ができます。 これは、2進表記法として知られています。 <!-- ******************************************* ************ End of Section *************** ******************************************* --> <!-- <sect1> Displaying binary information <label id="bininfo"> --> <sect1> 2進数の情報を表示する <label id="bininfo"> <p> <!-- <bf> Spell your name in Binary: </bf> --> <bf> あなたの名前を2進数で綴ってみましょう </bf> <p> <!-- Each character of the alphabet has a binary equivalent. Below is the name JOHN and its equivalent in binary. <code> J 0100 1010 O 0100 1111 H 0100 1000 N 0100 1110 </code> --> アルファベットの文字にはそれぞれ対応する2進数があります。 以下に JOHN という名前と、それに対応する2進数を示します。 <code> J 0100 1010 O 0100 1111 H 0100 1000 N 0100 1110 </code> <!-- More complex information can be created such as graphics, audio and video using the binary, or on/off action of transistors. --> より複雑な、画像やオーディオ、ビデオ等の様な情報も 2進数、 すなわちトランジスタの ON/OFF 動作を使って表すことができます。 <!-- Scroll down to the Binary Chart below to see the complete alphabet in binary. --> ページをスクロールして下のアルファベットと2進数の対応表を見てください。 <!-- Put a line space after &lowbar below to avoid space between.... --> <table loc=p> <tabular ca="rlrl"> <!-- Character <colsep>Binary <colsep>Character <colsep>Binary <rowsep><hline> --> 文字 <colsep>2進数 <colsep>文字 <colsep>2進数 <rowsep><hline> A <colsep> 0100 0001 <colsep> N <colsep> 0100 1110 <rowsep> B <colsep> 0100 0010 <colsep> O <colsep> 0100 1111 <rowsep> C <colsep> 0100 0011 <colsep> P <colsep> 0101 0000 <rowsep> D <colsep> 0100 0100 <colsep> Q <colsep> 0101 0001 <rowsep> E <colsep> 0100 0101 <colsep> R <colsep> 0101 0010 <rowsep> F <colsep> 0100 0110 <colsep> S <colsep> 0101 0011 <rowsep> G <colsep> 0100 0111 <colsep> T <colsep> 0101 0100 <rowsep> H <colsep> 0100 1000 <colsep> U <colsep> 0101 0101 <rowsep> I <colsep> 0100 1001 <colsep> V <colsep> 0101 0110 <rowsep> J <colsep> 0100 1010 <colsep> W <colsep> 0101 0111 <rowsep> K <colsep> 0100 1011 <colsep> X <colsep> 0101 1000 <rowsep> L <colsep> 0100 1100 <colsep> Y <colsep> 0101 1001 <rowsep> M <colsep> 0100 1101 <colsep> Z <colsep> 0101 1010 <rowsep> </tabular> <!-- <caption><bf>Binary Chart for Alphabets</bf></caption> --> <caption><bf>アルファベット - 2進数対応表</bf></caption> </table> <!-- ******************************************* ************ End of Section *************** ******************************************* --> <!-- <sect1> What is a Semi-conductor? <label id="semicon"> --> <sect1> 半導体とは何か ? <label id="semicon"> <p> <!-- Conductors and insulators : --> <bf>導体と絶縁体</bf> <!-- Many materials, such as most metals, allow electrical current to flow through them. These are known as conductors. Materials that do not allow electrical current to flow through them are called insulators. Pure silicon, the base material of most transistors, is considered a semiconductor because its conductivity can be modulated by the introduction of impurities. --> ほとんどの金属をはじめ、電気を通す物質はたくさんあります。 それらは導体として知られています。 電気を通さない物質は絶縁体と呼ばれます。 大部分のトランジスタのベース素材である純粋なシリコンは半導体と 考えられます。 なぜならば、不純物を添加することで導電性を変化させることが できるからです。 (訳注:半導体と呼ばれる理由ではこれではないような気がします。) <!-- ******************************************* ************ End of Section *************** ******************************************* --> <!-- <sect2> Anatomy of Transistor <label id="anatomy"> --> <sect2> トランジスタの分析 <label id="anatomy"> <p> <!-- Semiconductors and flow of electricity --> <bf>半導体と電気の流れ</bf> <!-- Adding certain types of impurities to the silicon in a transistor changes its crystalline structure and enhances its ability to conduct electricity. Silicon containing boron impurities is called p-type silicon - p for positive or lacking electrons. Silicon containing phosphorus impurities is called n-type silicon - n for negative or having a majority of free electrons --> ある種の不純物をトランジスタのシリコンに添加すると、結晶質が変化して 導電性が向上します。 ホウ素不純物を添加したシリコンは p 形シリコンと呼ばれます。 - p は正 (positive) すなわち、電子が不足しているという意味です。 (訳注: 正の電荷、すなわち電子が欠けた穴を「正孔(positive hole)」といいます。) リン不純物を添加したシリコンは n 形シリコンと呼ばれます。 - n は負 (negative) すなわち、多数の自由電子をもっているという意味です。 <!-- ******************************************* ************ End of Section *************** ******************************************* --> <!-- <sect2> A Working Transistor <label id="worktrans"> --> <sect2> 動作中のトランジスタ <label id="worktrans"> <p> <!-- A Working transistor - The On/Off state of Transistor --> <bf>動作中のトランジスタ - トランジスタの ON/OFF 状態</bf> <!-- Transistors consist of three terminals; the source, the gate and the drain. --> トランジスタには多くのタイプがありますが、ここでは例として 半導体の集積回路によく使われている n チャネル MOS FET(nMOSFET) について解説します。 MOS とは Metal-Oxide-Semiconductor の略で、<金属> - <酸化物 (多くの場合 SiO2 で絶縁皮膜を形成 )> - <半導体> いうサンドイッチ構造 (MOS 構造 )をもっている、という意味です。 MOSFET ではゲート端子が MOS 構造となっています。 以後、この nMOSFET のことを単に「トランジスタ」と表記します。 このトランジスタは下図のような構造をしており、ソース(S)、ゲート(G)、ドレイン(D) という3つの端子をもっています。 <verb> S G D ### ===== ----------------- | n+ |@@@@@| n+ | |____| |____| p+ area ----------------- n+ : 電子密度の高い部分 p+ : 正孔密度の高い部分 == : 酸化物絶縁皮膜 ## : 金属電極 @@ : 電流の通り道 </verb> <!-- In the n-type transistor, both the source and the drain are negatively-charged and sit on a positively-charged well of p-silicon. --> このタイプのトランジスタでは、ソースとドレインは負に帯電していて、 p 形シリコンの正に帯電したくぼみにのっています。 <!-- When positive voltage is applied to the gate, electrons in the p-silicon are attracted to the area under the gate forming an electron channel between the source and the drain. --> ゲートに正電圧が加わると、p 形シリコンの中の電子がゲートの下の領域に引き付けられ ソースとドレインの間に電子の通り道を作ります。 <!-- When positive voltage is applied to the drain, the electrons are pulled from the source to the drain. In this state the transistor is on. --> ドレインに正電圧が加わると、電子はソースからドレインに向かって引っ張られます。 この状態にある時、トランジスタは ON です。 <!-- If the voltage at the gate is removed, electrons aren't attracted to the area between the source and drain. The pathway is broken and the transistor is turned off. --> ゲートに加わっている電圧がなくなると、ソースとドレインの間の領域に電子が 引き付けられなくなります。 電子の通り道は閉ざされ、トランジスタは OFF となります。 <!-- ******************************************* ************ End of Section *************** ******************************************* --> <!-- <sect2> Impact of Transistors <label id ="impact"> --> <sect2> トランジスタの衝撃 <label id ="impact"> <p> <!-- The Impact of Transistors - How microprocessors affect our lives. --> <bf>トランジスタの衝撃 - マイクロプロセッサがどれほど私達の生活に影響しているか</bf> <!-- The binary function of transistors gives micro- processors the ability to perform many tasks; from simple word processing to video editing. Micro- processors have evolved to a point where transistors can execute hundreds of millions of instructions per second on a single chip. Automobiles, medical devices, televisions, computers and even the Space Shuttle use microprocessors. They all rely on the flow of binary information made possible by the transistor. --> トランジスタの2進機能のおかげでマイクロプロセッサは、単なるワープロから ビデオ編集まで、多くの仕事をこなす事ができます。 マイクロプロセッサは、1つのチップで 1秒間あたり何億という命令をトランジスタ が実行する、というところまで進化しました。 自動車、医療機器、テレビ、コンピュータそしてスペースシャトルでさえ マイクロプロセッサを使っています。 それらは全て、トランジスタによって可能となる2進情報の流れに頼っています。 <!-- ******************************************* ************ End of Section *************** ******************************************* <chapt> CPU Design and Architecture <label id="cpudesign"> --> <!-- <sect> CPU Design and Architecture <label id="cpudesign"> --> <sect> CPU の設計とアーキテクチャ <label id="cpudesign"> <p> <!-- ******************************************* ************ End of Section *************** ******************************************* --> <sect1> CPU の設計 <label id="cpudesign"> <p> <!-- Visit the following links for information on CPU Design. --> CPU 設計に関する情報です。これらのリンク先を訪れてみてください。 <itemize> <item> Hamburg University VHDL archive <url url="http://tech-www.informatik.uni-hamburg.de/vhdl"> <item> Kachina Design tools <url url="http://SAL.KachinaTech.COM/Z/1/index.shtml"> <item> List of FPGA-based Computing Machines <url url="http://www.io.com/~guccione/HW_list.html"> <item> SPARC International <url url="http://www.sparc.com"> <item> Design your own processor <url url="http://www.spacetimepro.com"> <item> Teaching Computer Design with FPGAs <url url="http://www.fpgacpu.org"> <item> Technical Committee on Computer Architecture <url url="http://www.computer.org/tab/tcca"> <p> <item> Frequently Asked Questions FAQ on VHDL <url url="http://www.vhdl.org/vi/comp.lang.vhdl"> <!-- or it is at <url url="http://www.vhdl.org/comp.lang.vhdl"> --> または <url url="http://www.vhdl.org/comp.lang.vhdl"> <item> Comp arch FAQ <url url="http://www.esacademy.com/automation/faq.htm"> <item> Comp arch FAQ <url url="ftp://rtfm.mit.edu/pub/usenet-by-hierarchy/comp/arch"> <item> VME Bus FAQ <url url="http://www.hitex.com/automation/FAQ/vmefaq"> <p> <item> Homepage of SPEC <url url="http://performance.netlib.org/performance/html/spec.html"> <item> Linux benchmarks <url url="http://www.silkroad.com/linux-bm.html"> </itemize> <!-- ******************************************* ************ End of Section *************** ******************************************* --> <!-- <sect1> Online Textbooks on CPU Architecture <label id="books"> --> <sect1> CPU アーキテクチャに関するオンラインの解説書 <label id="books"> <p> <itemize> <item> Online HTML book <url url="http://odin.ee.uwa.edu.au/~morris/CA406/CA_ToC.html"> <item> Univ of Texas Comp arch : <url url="http://www.cs.panam.edu/~meng/Course/CS4335/Notes/master/master.html"> <item> Number systems and Logic circuits : <url url="http://www.tpub.com/neets/book13/index.htm"> <item> Digital Logic: <url url="http://www.play-hookey.com/digital"> <item> FlipFlops: <url url="http://www.ece.utexas.edu/~cjackson/FlipFlops/web_pages/Publish/FlipFlops.html"> <item> Instruction Execution cycle: <url url="http://cq-pan.cqu.edu.au/students/timp1/exec.html"> <item> Truth Table constructor: <url url="http://pirate.shu.edu/~borowsbr/Truth/Truth.html"> <item> Overview of Shared Memory: <url url="http://www.sics.se/cna/mp_overview.html"> <item> Simulaneous Multi-threading in processors : <url url="http://www.cs.washington.edu/research/smt"> <item> Study Web : <url url="http://www.studyweb.com/links/277.html"> <item> Univ notes: <url url="http://www.ece.msstate.edu/~linder/Courses/EE4713/notes"> <item> Advice: An Adaptable and Extensible Distributed Virtual Memory Architecture <url url="http://www.gsyc.inf.uc3m.es/~nemo/export/adv-pdcs96/adv-pdcs96.html"> <item> Univ of Utah Avalanche Scalable Parallel Processor Project <url url="http://www.cs.utah.edu/avalanche/avalanche-publications.html"> <item> Distributed computing : <url url="http://www.geocities.com/SiliconValley/Vista/4015/pdcindex.html"> <item> Pisma Memory architecture: <url url="http://aiolos.cti.gr/en/pisma/pisma.html"> <item> Shared Mem Arch: <url url="http://www.ncsa.uiuc.edu/General/Exemplar/ARPA"> <item> Textbooks on Comp Arch: <url url="http://www.rdrop.com/~cary/html/computer_architecture.html#book"> <!-- and VLSI design <url url="http://www.rdrop.com/~cary/html/vlsi.html"> --> そして VLSI 設計 <url url="http://www.rdrop.com/~cary/html/vlsi.html"> <p> <item> Comp Arch Conference and Journals <url url="http://www.handshake.de/user/kroening/conferences.html"> <item> WWW Comp arch page <url url="http://www.cs.wisc.edu/~arch/www"> </itemize> <!-- ******************************************* ************ End of Section *************** ******************************************* --> <!-- <sect1> University Lecture notes on CPU Architecture <label id="univlectures"> --> <sect1> CPU アーキテクチャに関する大学の講義関連の書物 <label id="univlectures"> <p> <itemize> <item> Advanced Computer Architecture <url url="http://www.cs.utexas.edu/users/dahlin/Classes/GradArch"> <item> Computer architecture - Course level 415 <url url="http://www.diku.dk/teaching/2000f/f00.415"> <item> MIT: <url url="http://www.csg.lcs.mit.edu/6.823"> <item> UBC CPU slides : <url url="http://www.cs.ubc.ca/spider/neufeld/courses/cs218/chapter8/index.htm"> <item> Purdue Univ slides: <url url="http://www.ece.purdue.edu/~gba/ee565/Sessions/S03HTML/index.htm"> <item> Rutgers Univ - Principles of Comp Arch : <url url="http://www.cs.rutgers.edu/~murdocca/POCA/Chapter02.html"> <item> Brown Univ - <url url="http://www.engin.brown.edu/faculty/daniels/DDZO/cmparc.html"> <item> Univ of Sydney - Intro Digital Systems : <url url="http://www.eelab.usyd.edu.au/digital_tutorial/part3"> <item> Bournemouth Univ, UK Principles of Computer Systems : <url url="http://ncca.bournemouth.ac.uk/CourseInfo/BAVisAn/Year1/CompSys"> <item> Parallel Virtual machine: <url url="http://www.netlib.org/pvm3/book/node1.html"> <item> univ center: <url url="http://www.eecs.lehigh.edu/~mschulte/ece401-99"> <item> univ course: <url url="http://www.cs.utexas.edu/users/fussell/cs352"> <item> Examples of working VLSI circuits(in Greek) <url url="http://students.ceid.upatras.gr/~gef/projects/vlsi"> </itemize> <!-- ******************************************* ************ End of Section *************** ******************************************* --> <!-- <sect1> CPU Architecture <label id="cpuarch"> --> <sect1> CPU アーキテクチャ <label id="cpuarch"> <p> <!-- Visit the following links for information on CPU architecture --> CPU アーキテクチャに関する情報です。以下のリンク先を訪れてみてください。 <itemize> <item> Comp architecture: <url url="http://www.rdrop.com/~cary/html/computer_architecture.html"> <!-- and VLSI design <url url="http://www.rdrop.com/~cary/html/vlsi.html"> --> そして VLSI 設計 <url url="http://www.rdrop.com/~cary/html/vlsi.html"> <item> Beyond RISC - The Post-RISC Architecture <url url="http://www.cps.msu.edu/~crs/cps920"> <item> Beyond RISC - PostRISC : <url url="http://www.ceng.metu.edu.tr/~e106170/postrisc.html"> <item> List of CPUS <url url="http://einstein.et.tudelft.nl/~offerman/cl.contents2.html"> <item> PowerPC Arch <url url="http://www.mactech.com/articles/mactech/Vol.10/10.08/PowerPcArchitecture"> <item> CPU Info center - List of CPUs sparc, arm etc.. <url url="http://bwrc.eecs.berkeley.edu/CIC/tech"> <item> cpu arch intel IA 64 <url url="http://developer.intel.com/design/ia-64"> <item> Intel 386 CPU architecture <url url="http://www.delorie.com/djgpp/doc/ug/asm/about-386.html"> <item> Freedom CPU architecture <url url="http://f-cpu.tux.org/original/Freedom.php3"> <item> Z80 CPU architecture <url url="http://www.geocities.com/SiliconValley/Peaks/3938/z80arki.htm"> <item> CRIMSEN OS and teaching-aid CPU<url url="http://www.dcs.gla.ac.uk/~ian/project3/node1.html"> <item> Assembly Language concepts <url url="http://www.cs.uaf.edu/~cs301/notes/Chapter1/node1.html"> <item> Alpha CPU architecture <url url="http://www.linux3d.net/cpu/CPU/alpha/index.shtml"> <item> <url url="http://hugsvr.kaist.ac.kr/~exit/cpu.html"> <item> Tron CPU architecture <url url="http://tronweb.super-nova.co.jp/tronvlsicpu.html"> </itemize> <!-- ******************************************* ************ End of Section *************** ******************************************* --> <!-- <sect1> Usenet Newsgroups for CPU design <label id="newsgroups"> --> <sect1> CPU 設計に関する Usenet ニュースグループ <label id="newsgroups"> <p> <itemize> <item> Newsgroup computer architecture <url url="news:comp.arch"> <item> Newsgroup FPGA <url url="news:comp.arch.fpga"> <item> Newsgroup Arithmetic <url url="news:comp.arch.arithmetic"> <item> Newsgroup Bus <url url="news:comp.arch.bus"> <item> Newsgroup VME Bus <url url="news:comp.arch.vmebus"> <item> Newsgroup embedded <url url="news:comp.arch.embedded"> <item> Newsgroup embedded piclist <url url="news:comp.arch.embedded.piclist"> <item> Newsgroup storage <url url="news:comp.arch.storage"> <item> Newsgroup VHDL <url url="news:comp.lang.vhdl"> <item> Newsgroup Computer Benchmarks <url url="news:comp.benchmarks"> </itemize> <!-- ******************************************* ************ End of Section *************** ******************************************* <chapt> Fabrication, Manufacturing CPUs <label id="fabricate"> --> <!-- <sect> Fabrication, Manufacturing CPUs <label id="fabricate"> --> <sect> CPU の構成と製造 <label id="fabricate"> <!-- <p> After doing the design and testing of CPU, your company may want to mass produce the CPUs. There are many "semi-conductor foundries" in the world who will do that for you for a nominal competetive cost. There are companies in USA, Germany, UK, Japan, Taiwan, Korea and China. --> <p> 設計とテストが完了したら次は大量生産したい、とあなたの会社は考えるかも知れません。 そうしたあなたの要望に、競争力のあるわずかな価格で応える &dquot;半導体ファウンドリ(製造請負業)&dquot;が世界中にたくさんあります。 アメリカ合衆国やドイツ、イギリス、日本、台湾、韓国そして中国にそういった会社があります。 <!-- TMSC (Taiwan) is the <bf>"largest independent foundry"</bf> in the world. You may want to shop around and you will get the best rate for a very high volume production (greater than 100,000 CPU units). --> TMSC (台湾 )は世界で <bf>&dquot;最大の独立ファウンドリ&dquot;</bf> です。 ここに注文すれば、大量注文 (100,000個以上 )だと最も割安となります。 <!-- ******************************************* ************ End of Section *************** ******************************************* --> <!-- <sect1> Foundry Business is in Billions of dollars!! --> <sect1> ファウンドリビジネスは今、何十億ドルもの市場です!! <p> <!-- Foundry companies invested very heavily in the infra-structure and building plants runs in several millions of dollars! Silicon foundry business will grow from $7 billion to $36 billion by 2004 (414% increase!!). More integrated device manufacturers (IDMs) opt to outsource chip production verses adding wafer-processing capacity. Independent foundries currently produce about 12% of the semiconductors in the world, and by 2004, that share will more than double to 26%. --> ファウンドリ企業はインフラに大量の投資をしており、数百万ドルも かけて工場を建てています! シリコンファウンドリビジネスは 現在の 70億ドルから 2004年までには360億ドル (414%増加!)に成長するでしょう。 より多くの統合デバイス製造会社(IDM)が、自社でシリコンウエハ処理の能力を 増強するよりも、外部のチップ製造会社に生産委託する道を選択しています。 独立ファウンドリは現在世界の半導体の 12%を生産していますが、2004年までには 2倍以上の 26%のシェアとなるでしょう。 <!-- The "Big Three" pure-play foundries are - Taiwan Semiconductor Manufacturing Co. (TSMC), United Microelectronics Corp. (UMC), and Chartered Semiconductor Manufacturing Ltd. Pte.-collectively account for 69% of today's silicon foundry volume, but their share is expected to grow to 88% by 2004. --> 純全たる世界の &dquot;ビッグ 3"ファウンドリは -- Taiwan Semiconductor Manufacturing Co. (TSMC), United Microelectronics Corp. (UMC), そして Chartered Semiconductor Manufacturing Ltd. Pte.です。 これら3つの企業で現在のシリコンファウンドリ全体の 69%の利益を上げ、 2004年までにはそのシェアを 88%まで伸ばすと予想されています。 <!-- ******************************************* ************ End of Section *************** ******************************************* --> <!-- <sect1> Fabrication of CPU --> <sect1> CPU の組み立て <p> <!-- There are hundreds of foundries in the world (too numerous to list). Some of them are - --> 世界中に何百ものファウンドリがあります (多過ぎて紹介しきれません )。そのうちのいくつかは - <itemize> <item> Fabless Semiconductor Association <url url="http://www.fsa.org"> <item> TSMC (Taiwan Semi-conductor Manufacturing Co) <url url="http://www.tsmc.com">, about co <url url="http://www.tsmc.com/about/index.html"> <item> Chartered Semiconductor Manufacturing, Singapore <url url="http://www.csminc.com"> <item> United Microelectronics Corp. (UMC) <url url="http://www.umc.com/index.html"> <item> Advanced BGA Packing <url url="http://www.abpac.com"> <item> Amcor, Arizona <url url="http://www.amkor.com"> <item> Elume, USA <url url="http://www.elume.com"> <item> X-Fab, Gesellschaft zur Fertigung von Wafern mbH, Erfurt, Germany <url url="http://www.xfab.com"> <item> IBM corporation, (Semi-conductor foundry div) <url url="http://www.ibm.com"> <item> National Semi-conductor Co, Santa Clara, USA <url url="http://www.natioanl.com"> <item> Intel corporation (Semi-conductor foundries), USA <url url="http://www.intel.com"> <item> Hitachi Semi-conductor Co, Japan <url url="http://www.hitachi.com"> <item> FUJITSU limited, Japan has <url name="Wafer-foundry-services" url="http://www.fujitsu.com/products/semiconductor/lsi"> <item> Mitsubhishi Semi-conductor Co, Japan <item> Hyandai Semi-conductor, Korea <url url="http://www.hea.com"> <item> Samsumg Semi-conductor, Korea <item> Atmel, France <url url="http://www.atmel-wm.com"> </itemize> <!-- If you know any major foundries, let me know I will add to list. --> もし、大手の製造所をご存知でしたら、私に教えてください。リストに追加します。 <!-- List of CHIP foundry companies --> チップファウンドリの一覧 <itemize> <item> Chip directory <url url="http://www.xs4all.nl/~ganswijk/chipdir/make/foundry.htm"> <item> Chip makers <url url="http://www.xs4all.nl/~ganswijk/chipdir/make/index.htm"> <item> IC manufacturers <url url="http://www.xs4all.nl/~ganswijk/chipdir/c/a.htm"> </itemize> <!-- ******************************************* ************ End of Section *************** ******************************************* <chapt change> Super Computer Architecture --> <!-- <sect> Super Computer Architecture --> <sect> スーパーコンピュータのアーキテクチャ <p> <!-- For building Super computers, the trend that seems to emerge is that most new systems look as minor variations on the same theme: clusters of RISC-based Symmetric Multi-Processing (SMP) nodes which in turn are connected by a fast network. Consider this as a natural architectural evolution. The availability of relatively low-cost (RISC) processors and network products to connect these processors together with standardised communication software has stimulated the building of home-brew clusters computers as an alternative to complete systems offered by vendors. --> スーパーコンピュータの構築に関して、最近の顕著な傾向としては ほとんどの新しいシステムは同じテーマに基づいて少し変化をつけた ものとなっています。 すなわち、高速ネットワークで繋がれた、RISC ベースの 対称マルチプロセッシング (Symmetric Multi-Processing :SMP)ノードの集合体です。 これは、アーキテクチャの自然な進化だと思ってください。 プロセッサ (RISC)もネットワーク機器も比較的安価に出回るようになり、 標準化された通信ソフトウェアを使い、それらのプロセッサをつないで 一体化することが可能になった事で、メーカーが提供する完成したシステム を使うかわりに、自家製クラスタコンピュータを構築するケースが増えています。 <!-- Visit the following sites for Super Computers - --> スーパーコンピュータに関する以下のサイトを訪れてみてください - <itemize> <item> Top 500 super computers <url url="http://www.top500.org/ORSC/2000"> <item> National Computing Facilities Foundation <url url="http://www.nwo.nl/ncf/indexeng.htm"> <item> Linux Super Computer Beowulf cluster <url url="http://www.linuxdoc.org/HOWTO/Beowulf-HOWTO.html"> <item> Extreme machines - beowulf cluster <url url="http://www.xtreme-machines.com"> <item> System architecture description of the Hitachi SR2201 <url url="http://www.hitachi.co.jp/Prod/comp/hpc/eng/sr1.html"> <item> Personal Parallel Supercomputers <url url="http://www.checs.net/checs_98/papers/super"> </itemize> <!-- ******************************************* ************ End of Section *************** ******************************************* --> <!-- <sect1> Main Architectural Classes --> <sect1> 主なアーキテクチャの種類 <p> <!-- Before going on to the descriptions of the machines themselves, it is important to consider some mechanisms that are or have been used to increase the performance. The hardware structure or architecture determines to a large extent what the possibilities and impossibilities are in speeding up a computer system beyond the performance of a single CPU. Another important factor that is considered in combination with the hardware is the capability of compilers to generate efficient code to be executed on the given hardware platform. In many cases it is hard to distinguish between hardware and software influences and one has to be careful in the interpretation of results when ascribing certain effects to hardware or software peculiarities or both. In this chapter we will give most emphasis to the hardware architecture. For a description of machines that can be considered to be classified as "high-performance". --> マシンそのものについての話を始める前に、 性能を上げる為に現在使われ、あるいは昔からずっと使われている いくつかのメカニズムについて考えることが重要です。 シングルプロセッサの性能を越えてコンピュータシステムを高速化する上での 可能、不可能というのは、その大部分がハードウェアの構造あるいはアーキテクチャで 決まってしまいます。 ハードウェアとの組合せでもう一つ考えられる重要な点は、用意されたハードウェア プラットフォームにおいて処理効率の良いコードを生成するためのコンパイラの能力です。 多くの場合においてハードウェアとソフトウェアのどちらが影響しているのかを 区別するのは困難であり、ある効果がハードウェア、あるいはソフトウェア、 またはその両方によるものなのかという場面で、その結果を解釈するときには 慎重にならなくてはなりません。 この章では &dquot;高性能&dquot; であると分類されるマシンについて記述するため ハードウェアアーキテクチャに最も重点を置きます。 <!-- Since many years the taxonomy of Flynn has proven to be useful for the classification of high-performance computers. This classification is based on the way of manipulating of instruction and data streams and comprises four main architectural classes. We will first briefly sketch these classes and afterwards fill in some details when each of the classes is described. --> 何年にも渡り、「フリン (Flynn)の分類」が高性能コンピュータを分類するのに役立つこと を証明してきました。 これは、命令 (instruction)ストリームとデータストリームの扱い方の違いによって 分類する方法で、4つの主なアーキテクチャのクラスがあります。 まず、それらのクラスについて簡単に概要を述べ、そのあとでそれぞれのクラスについて 述べるときに詳細に触れる事としましょう。 <!-- ******************************************* ************ End of Section *************** ******************************************* --> <!-- <sect1> SISD machines --> <sect1> SISD (Single Instruction stream, Single Data stream) マシン <p> <!-- These are the conventional systems that contain one CPU and hence can accommodate one instruction stream that is executed serially. Nowadays many large mainframes may have more than one CPU but each of these execute instruction streams that are unrelated. Therefore, such systems still should be regarded as (a couple of) SISD machines acting on different data spaces. Examples of SISD machines are for instance most workstations like those of DEC, Hewlett-Packard, and Sun Microsystems. The definition of SISD machines is given here for completeness' sake. We will not discuss this type of machines in this report. --> 一つの CPU を搭載し、逐次処理される一個の 命令ストリームを扱うような旧式のシステムはこのクラスに含まれます。 最近ではたくさんの大型メインフレームが複数 CPU を備えていることが ありますが、それぞれがお互いに無関係な命令ストリームを実行しています。 それゆえ、このようなマシンも異なるデータ空間で動作する SISD(の集まり) であるといえます。 SISD の例としては DEC や Hewlett-Packard そして Sun Microsystems の ほとんどのワークステーションが挙げられます。 SISD マシンの定義はここでは単にすべてのクラスを網羅するために行なっただけです。 このタイプのマシンについてはこのレポートでは扱いません。 <!-- ******************************************* ************ End of Section *************** ******************************************* --> <sect1> <!-- SIMD machines --> SIMD(Single Instruction stream, Multiple Data stream) マシン <p> <!-- Such systems often have a large number of processing units, ranging from 1,024 to 16,384 that all may execute the same instruction on different data in lock-step. So, a single instruction manipulates many data items in parallel. Examples of SIMD machines in this class are the CPP DAP Gamma II and the Alenia Quadrics. --> このようなマシンはしばしば 1,024個から 16,384個といった膨大な数の 処理単位をもち、それらがそれぞれ異なるデータに対して軍隊の行進のように 同じ命令を実行することが可能となっています。 したがって、たった一つの命令で多くのデータを並列に操ることができます。 このタイプに分類される SIMD の例としては CPP DAP Gamma II や Alenia Quadrics などが挙げられます。 <!-- Another subclass of the SIMD systems are the vectorprocessors. Vectorprocessors act on arrays of similar data rather than on single data items using specially structured CPUs. When data can be manipulated by these vector units, results can be delivered with a rate of one, two and - in special cases - of three per clock cycle (a clock cycle being defined as the basic internal unit of time for the system). So, vector processors execute on their data in an almost parallel way but only when executing in vector mode. In this case they are several times faster than when executing in conventional scalar mode. For practical purposes vectorprocessors are therefore mostly regarded as SIMD machines. Examples of such systems is for instance the Hitachi S3600. --> もう一つのタイプの SIMD システムはベクトルプロセッサです。 ベクトルプロセッサは特別な構造をもつ CPU を使って、独立したデータ群 より類似データの配列に対して能力を発揮します。 ベクトルユニットでデータを処理する場合、結果は3クロックサイクル当たり 1個かまた特別な場合には2個の割合で出力されます。 (1クロックサイクルとはシステムの内部処理時間の基本単位です。) つまり、ベクトルモードで実行するときに限り ベクトルプロセッサは ほぼ並列にデータを処理する事になります。 この場合、旧式のスカラーモードで実行するのに比べて数倍高速となります。 このため、ベクトルプロセッサの実用上の効果は、ほぼ SIMD マシンと同じと 考えられます。 このようなシステムの例をあげるとすれば、Hitachi S3600 です。 <!-- ******************************************* ************ End of Section *************** ******************************************* --> <sect1> <!-- MISD machines --> MISD(Multiple Instruction stream, Single Data stream) マシン <p> <!-- Theoretically in these type of machines multiple instructions should act on a single stream of data. As yet no practical machine in this class has been constructed nor are such systems easily to conceive. We will disregard them in the following discussions. --> 理論的にはこのようなタイプのマシンでは、複数の命令が単一の データストリームに対して動作することになります。 このクラスに分類されるマシンは実際には今まで作られた事はなく、 また簡単に想像できるものでもないので、 これ以降の部分ではこのクラスを無視します。 <!-- ******************************************* ************ End of Section *************** ******************************************* --> <sect1> <!-- MIMD machines --> MIMD(Multiple Instruction stream, Multiple Data stream) マシン <p> <!-- These machines execute several instruction streams in parallel on different data. The difference with the multi-processor SISD machines mentioned above lies in the fact that the instructions and data are related because they represent different parts of the same task to be executed. So, MIMD systems may run many sub-tasks in parallel in order to shorten the time-to-solution for the main task to be executed. There is a large variety of MIMD systems and especially in this class the Flynn taxonomy proves to be not fully adequate for the classification of systems. Systems that behave very differently like a four-processor NEC SX-5 and a thousand processor SGI/Cray T3E fall both in this class. In the following we will make another important distinction between classes of systems and treat them accordingly. --> これらのマシンはいくつかの命令ストリームを異なるデータに対して 並列に実行します。 上述のマルチプロセッサ SISD マシンとの違いは、複数の命令や複数のデータが、 同じタスクの異なる部分であるが故にお互いに関係しあっているという事実です。 したがって MIMD システムはメインタスクの処理時間を短縮するために 多くのサブタスクを並列に実行させる事ができます。 MIMD には多くのバリエーションがあり、特にこのクラスにおいては Flynn の分類 はシステムの分類法として適切でない事が分かります。 全く異なる動作形態の4プロセッサの NEC SX-5 と 1000プロセッサの SGI/Cray T3E が両方とも同じこのクラスに分類されてしまいます。 このため、この後の部分においては、システムの分類においてもう一つ別な、重要な 区別をしてそれを扱っていきます。 <!-- ******************************************* ************ End of Section *************** ******************************************* --> <sect2> <!-- Shared memory systems --> 共有メモリシステム (Shared Memory systems) <p> <!-- Shared memory systems have multiple CPUs all of which share the same address space. This means that the knowledge of where data is stored is of no concern to the user as there is only one memory accessed by all CPUs on an equal basis. Shared memory systems can be both SIMD or MIMD. Single-CPU vector processors can be regarded as an example of the former, while the multi-CPU models of these machines are examples of the latter. We will sometimes use the abbreviations SM-SIMD and SM-MIMD for the two subclasses. --> 共有メモリシステムでは、複数の CPU が全て同じアドレス空間を共有します。 全ての CPU が対等に、たった一つのメモリにアクセスするので ユーザはデータの格納場所を知る必要がありません。 共有メモリシステムは SIMD であることもあり MIMD であることもあります シングル CPU のベクトルプロセッサは前者の例として挙げることができます。 一方マルチ CPU 共有メモリシステムのマシンは後者の例となります。 今後、この二つのサブクラスについて SM-SIMD, SM-MIMD という略語を 用いることにします。 <!-- ******************************************* ************ End of Section *************** ******************************************* --> <sect2> <!-- Distributed memory systems --> 分散メモリシステム (Distributed Memory systems) <p> <!-- In this case each CPU has its own associated memory. The CPUs are connected by some network and may exchange data between their respective memories when required. In contrast to shared memory machines the user must be aware of the location of the data in the local memories and will have to move or distribute these data explicitly when needed. Again, distributed memory systems may be either SIMD or MIMD. The first class of SIMD systems mentioned which operate in lock step, all have distributed memories associated to the processors. As we will see, distributed-memory MIMD systems exhibit a large variety in the topology of their connecting network. The details of this topology are largely hidden from the user which is quite helpful with respect to portability of applications. For the distributed-memory systems we will sometimes use DM-SIMD and DM-MIMD to indicate the two subclasses. --> このケースでは、CPU はそれぞれに関連づけられたメモリを持っています。 複数の CPU がネットワークで接続されていて、要求に応じてそれぞれの 担当するメモリ間でデータを交換することができます。 共有メモリシステムとは対照的に、ユーザはローカルメモリ内のデータの 位置を知っていなければならず、また要求に応じて明示的にデータの移動や分配を 行わなくてはなりません。 分散メモリシステムにも、SIMD, MIMD いずれの場合もあります。 先に説明した方の、軍隊の行進のように動作する SIMD システムは 全てプロセッサに関連づけられた分散メモリを持っています。 後で述べるように、分散メモリ型 MIMD システムには、非常に多様な種類の ネットワーク接続形態 (トポロジ) があります。 アプリケーションの移植性に関して役立つトポロジの詳細は 大部分がユーザから見えないようになっています。 今後、この二つのサブクラスについて DM-SIMD, DM-MIMD という略語を 用いることにします。 <!-- Although the difference between shared- and distributed memory machines seems clear cut, this is not always entirely the case from user's point of view. For instance, the late Kendall Square Research systems employed the idea of "virtual shared memory" on a hardware level. Virtual shared memory can also be simulated at the programming level: A specification of High Performance Fortran (HPF) was published in 1993 which by means of compiler directives distributes the data over the available processors. Therefore, the system on which HPF is implemented in this case will look like a shared memory machine to the user. Other vendors of Massively Parallel Processing systems (sometimes called MPP systems), like HP and SGI/Cray, also are able to support proprietary virtual shared-memory programming models due to the fact that these physically distributed memory systems are able to address the whole collective address space. So, for the user such systems have one global address space spanning all of the memory in the system. We will say a little more about the structure of such systems in the ccNUMA section. In addition, packages like TreadMarks provide a virtual shared memory environment for networks of workstations. --> 共有メモリマシンと分散メモリマシンの違いは明白であるように見えますが ユーザの視点で見れば必ずしもそうとはいえません。 例えば近頃の Kendall Square Research システムはハードウェアレベルでの &dquot;仮想共有メモリ&dquot;という考え方を採用しています。 仮想共有メモリはソフトウェアレベルでもシミュレートすることができます。 例えば、1993年に発表された High Performance Fortran(HPF)の仕様は コンパイラの指令によって、データを利用可能なプロセッサに 分散するというものでした。 このため、この場合 HPF が実装されたシステムはユーザにとって 共有メモリマシンのように見えます。 HP(Heulett Packard)や SGI/Cray など他の大規模並列処理システム (Massively Parallel Processing systems:MPP systems) のベンダも仮想共有メモリプログラミングモデルをサポートしています。 そうすれば、物理的には分散メモリシステムであってもアドレス空間の集合全体の アドレスを指定することができるからです。 したがって、ユーザのためにシステムはメモリ全体に渡る単一の グローバルアドレス空間を持っています。 そのようなシステムの構造については ccNUMA のところでもう少しだけ触れるつもりです。 さらに、TreadMarks のようなパッケージはワークステーションのネットワークに 仮想共有メモリ環境をもたらします。 <!-- ******************************************* ************ End of Section *************** ******************************************* --> <sect1> <!-- Distributed Processing Systems --> 分散処理システム <p> <!-- Another trend that has came up in the last few years is distributed processing. This takes the DM-MIMD concept one step further: instead of many integrated processors in one or several boxes, workstations, mainframes, etc., are connected by (Gigabit) Ethernet, FDDI, or otherwise and set to work concurrently on tasks in the same program. Conceptually, this is not different from DM-MIMD computing, but the communication between processors is often orders of magnitude slower. Many packages to realise distributed computing are available. Examples of these are PVM (st anding for Parallel Virtual Machine), and MPI (Message Passing Interface). This style of programming, called the "message passing" model has becomes so much accepted that PVM and MPI have been adopted by virtually all major vendors of distributed-memory MIMD systems and even on shared-memory MIMD systems for compatibility reasons. In addition there is a tendency to cluster shared-memory systems, for instance by HiPPI channels, to obtain systems with a very high computational power. E.g., the NEC SX-5, and the SGI/Cray SV1 have this structure. So, within the clustered nodes a shared-memory programming style can be used while between clusters message-passing should be used. --> ここ数年で登場したもう一つのトレンドは分散処理です。 これは DM-MIMD の概念を一歩前進させたものです。 すなわち、一つあるいは複数の箱に入った多くの統合されたプロセッサの代わりに、 ワークステーションやメインフレームなどを (ギガビットの) イーサネットや FDDIやあるいは別な方法で接続して同じプログラムで同時に作業するように したものです。 コンセプトとしてはこれは DM-MIMD と変わりありませんがプロセッサ間の 通信はしばしば桁はずれに遅くなります。 分散コンピュータを実現する多くのパッケージが利用可能です。 例えば、PVM(Parallel Virtual Machine)や MPI(Message Passing Interface) などです。 &dquot;メッセージパッシング &dquot; モデルと呼ばれるこのプログラミングスタイルは 大変受け入れられるようになり、PVM や MPI が事実上すべての分散メモリ MIMD システムの大手ベンダーに採用されるようになりました。しかも共有メモリ MIMD システムのベンダーさえ、互換性という理由で採用するようになりました。 さらに、最近の傾向としては高性能パラレルインターフェイス(HiPPI)チャネルという100MB/s クラスの高速通信を使って、非常に高い計算能力をもつシステムを得る クラスタ共有メモリシステムというものがあります。 例としては、NEC SX-5 と SGI/Cray SV1 がこの構造を採用しています。 すなわち、クラスタ間の通信にはメッセージパッシングを使いながら、 ノードの集合体において共有メモリのプログラミングスタイルが使われているのです。 <!-- ******************************************* ************ End of Section *************** ******************************************* --> <sect1> <!-- ccNUMA machines --> ccNUMA マシン <p> <!-- As already mentioned in the introduction, a trend can be observed to build systems that have a rather small (up to 16) number of RISC processors that are tightly integrated in a cluster, a Symmetric Multi-Processing (SMP) node. The processors in such a node are virtually always connected by a 1-stage crossbar while these clusters are connected by a less costly network. --> この章の冒頭で述べた通り、やや少なめ (多くとも16)の RISC プロセッサ を一つのクラスタに密結合させたもの、 すなわち対称マルチプロセッシング (SMP) ノードをもったシステムを 構築することが流行の様です。 ノード内のプロセッサは、ほとんどいつも直接(単一ステージ・ クロスバーネットワークによって)接続されています。 一方クラスタ間はやや安価なネットワークによって繋がれています。 <!-- This is similar to the policy mentioned for large vectorprocessor ensembles mentioned above but with the important difference that all of the processors can access all of the address space. Therefore, such systems can be considered as SM-MIMD machines. On the other hand, because the memory is physically distributed, it cannot be guaranteed that a data access operation always will be satisfied within the same time. Therefore such machines are called ccNUMA systems where ccNUMA stands for Cache Coherent Non-Uniform Memory Access. The term "Cache Coherent" refers to the fact that for all CPUs any variable that is to be used must have a consistent value. Therefore, is must be assured that the caches that provide these variables are also consistent in this respect. There are various ways to ensure that the caches of the CPUs are coherent. One is the snoopy bus protocol in which the caches listen in on transport of variables to any of the CPUs and update their own copies of these variables if they have them. Another way is the directory memory, a special part of memory which enables to keep track of the all copies of variables and of their validness. --> これは、全てのプロセッサが全てのアドレス空間にアクセスできるという 重要な点を除けば、巨大なベクトルプロセッサの集合体について上述した 手段に似ています。 よって、このようなシステムは SM-MIMD マシンと考えることができます。 一方では、メモリが物理的に分散しているので、データアクセス操作が常に 同時に満足されるという保証はありません。 それゆえ、このようなマシンは ccNUMA システムと呼ばれます。 これは Cache Coherent Non-Uniform Memory Access の略です。 キャッシュコヒーレント(Cache Coherent:直訳 - キャッシュのつじつまが合っている)という言葉は &dquot;使用されるいかなる変数も、すべての CPU にとって一致していなければ ならない&dquot;という事実を表しています。 したがってこの点において、これらの変数の元になるキャッシュも また一致している事が確実でなければなりません。 複数の CPU のキャッシュがコヒーレントである事を確実にするためには色々 な方法があります。 一つは、snoopy bus protocol で、このバスにおいてキャッシュは CPU へ の変数の転送を監視し、もしそれがキャッシュしてある変数であれば 更新します。 もう一つの方法は、ディレクトリメモリで、これはすべての変数のコピーと その正当性を監視する、特殊な部分のメモリです。 <!-- For all practical purposes we can classify these systems as being SM-MIMD machines also because special assisting hardware/software (such as a directory memory) has been incorporated to establish a single system image although the memory is physically distributed. --> 実用上、これらのシステムは SM-MIMD マシンである と分類できます。SM-MIMD マシンに分類可能なもう一つの理由があります。 それは、メモリが物理的には分散しているにもかかわらず、 (例えばディレクトリメモリなどの) 特別な補助ハードウェアや ソフトウェアが、あたかも単一のシステムであるような形に 合体させてしまうからです。 <!-- ******************************************* ************ End of Section *************** ******************************************* <chapt change> Neural Network Processors --> <!-- <sect> Neural Network Processors --> <sect> ニューラルネットワークプロセッサ <p> <!-- NNs are models of biological neural networks and some are not, but historically, much of the inspiration for the field of NNs came from the desire to produce artificial systems capable of sophisticated, perhaps "intelligent", computations similar to those that the human brain routinely performs, and thereby possibly to enhance our understanding of the human brain. --> ニューラルネットワークは生物の神経ネットワークをモデル にしています。 しかしながら歴史的にはニューラルネットワークの分野における インスピレーションの源の大部分は 高性能の、あるいは「知的」といっても良いような 人間の脳が通常行なっているのに似た処理能力をもった人工的なシステム をつくり出したいという欲望から生まれており、またそれによって人間の脳を より理解することも可能であろうというところから生まれているのです。 <!-- Most NNs have some sort of "training" rule whereby the weights of connections are adjusted on the basis of data. In other words, NNs "learn" from examples (as children learn to recognize dogs from examples of dogs) and exhibit some capability for generalization beyond the training data. --> ほとんどのニューラルネットワークシステムはある種の &dquot;訓練&dquot;規則をもっており、それによって訓練データに基づいた ネットワークの接続点の重み付け調整を行ないます。 (訳注: 「重み」とは神経細胞におけるシナプスの接続強度に相当する係数です。 この「重み」を変化させることで&dquot;神経細胞の塊&dquot;である脳の 「学習」プロセスをシミュレートしています。) 言い換えれば、ニューラルネットワークシステムが訓練によって得た数々の事例から &dquot;学習&dquot;し(子供が数々の「犬」の事例をもとに「犬」というものの 認識を学ぶように)、訓練によるデータを越えて一般化する能力を発揮するのです。 <!-- NNs normally have great potential for parallelism, since the computations of the components are largely independent of each other. Some people regard massive parallelism and high connectivity to be defining characteristics of NNs, but such requirements rule out various simple models, such as simple linear regression (a minimal feedforward net with only two units plus bias), which are usefully regarded as special cases of NNs. --> ニューラルネットワークはそれぞれの演算が互いに独立で処理されるため、 並列性について非常に高い可能性を持っています。 大規模並列処理と高い接続性をニューラルネットワークの特徴だとする人もいます。 しかしこのような条件ではたとえば単純な線形回帰(2つのユニットとバイアスのみをもった 最小構成のフィードフォワードネットワーク)のようなシンプルなモデルがニューラル ネットワークの仲間ではないと定義されてしまいますが、これはニューラルネットワークの 特殊なケースとして扱うと便利なのです。 <!-- Some definitions of Neural Network (NN) are as follows: --> ニューラルネットワークの定義のいくつかを以下に示します: <itemize> <!-- <item> According to the DARPA Neural Network Study : A neural network is a system composed of many simple processing elements operating in parallel whose function is determined by network structure, connection strengths, and the processing performed at computing elements or nodes. --> <item>DARPAのニューラルネットワーク研究によると: 「ニューラルネットワークは並列に演算を行なう多数の単純な演算素子で構成されたシステムで、 その機能はネットワークの構造、接続の強さ、そして素子やノードの処理によって決まる。」 <!-- <item> According to Haykin: A neural network is a massively parallel distributed processor that has a natural propensity for storing experiential knowledge and making it available for use. It resembles the brain in two respects: <itemize> <item>Knowledge is acquired by the network through a learning process. <item>Interneuron connection strengths known as synaptic weights are used to store the knowledge. </itemize> --> <item> Haykinによると: 「ニューラルネットワークは大量の並列分散プロセッサで、経験的な知識を蓄積し利用可能にするという本質的な性質 をもっている。また、次の2つの点において、脳と似ている。」 <itemize> <!-- <item>Knowledge is acquired by the network through a learning process. <item>Interneuron connection strengths known as synaptic weights are used to store the knowledge. --> <item>学習プロセスを通したネットワークにより知識が得られる。 <item>「シナプス重み」として知られるニューロン間の接続強度が知識保存に使われる。 </itemize> <!-- Neural Network is a circuit composed of a very large number of simple processing elements that are neurally based. Each element operates only on local information. Furthermore each element operates asynchronously; thus there is no overall system clock. --> ニューラルネットワークは神経を基に作られた非常に多数の単純な演算素子で構成されています。 それぞれの素子はそれぞれの情報に対してのみ演算を実行します。 その上、それぞれの素子の演算は非同期で行なわれます。したがって全体のシステムクロックは 存在しないのです。 <!-- <item> According to Zurada: Artificial neural systems, or neural networks, are physical cellular systems which can acquire, store, and utilize experiential knowledge. </itemize> --> <item> Zuradaによると: 「人工の神経系、あるいはニューラルネットワークというものは、経験的知識を取り込み、格納し 、利用できるような実体ある細胞系である。」と定義されています。 </itemize> <!-- Visit the following sites for more info on Neural Network Processors --> ニューラルネットワークプロセッサについてさらに詳しく知りたい場合は <itemize> <item> Omers Neural Network pointers <url url="http://www.cs.cf.ac.uk/User/O.F.Rana/neural.html"> <item> FAQ site <url url="ftp://ftp.sas.com/pub/neural/FAQ.html"> <item> Automation corp <url name="Neural Network Processor" url="http://www.accurate-automation.com/Products/NNP.HTM"> hardware </itemize> <!-- ******************************************* ************ End of Section *************** ******************************************* <chapt change> Related URLs --> <!-- <sect> Related URLs --> <sect> 関連 URL <p> <!-- Visit following locators which are related - --> 関連する以下の場所を訪れて見てください。 <itemize> <item> Color Vim editor <url url="http://metalab.unc.edu/LDP/HOWTO/Vim-HOWTO.html"> <item> Source code control system <url url="http://metalab.unc.edu/LDP/HOWTO/CVS-HOWTO.html"> <!-- <item> Linux goodies main site <url url="http://www.aldev.8m.com"> and mirrors at --> <item> Linux goodies のメインサイト <url url="http://www.aldev.8m.com"> ミラーサイトは <url url="http://aldev.webjump.com" name="webjump">, <url url="http://www.angelfire.com/nv/aldev" name="angelfire">, <url url="http://www.geocities.com/alavoor/index.html" name="geocities">, <url url="http://aldev.virtualave.net" name="virtualave">, <url url="http://aldev.bizland.com" name="bizland">, <url url="http://members.theglobe.com/aldev/index.html" name="theglobe">, <url url="http://members.spree.com/technology/aldev" name="spree">, <url url="http://homepages.infoseek.com/~aldev1/index.html" name="infoseek">, <url url="http://www3.bcity.com/aldev" name="bcity">, <url url="http://aldev.50megs.com" name="50megs">, <url url="http://members.nbci.com/alavoor" name="NBCi">, <url url="http://aldev.terrashare.com" name="Terrashare">, <url url="http://members.fortunecity.com/aldev" name="Fortunecity">, <url url="http://aldev.freewebsites.com" name="Freewebsites">, <url url="http://members.tripod.lycos.com/aldev" name="Tripod"> </itemize> <!-- ******************************************* ************ End of Section *************** ******************************************* <chapt change> Other Formats of this Document --> <!-- <sect> Other Formats of this Document --> <sect> このドキュメントの他フォーマットのもの <p> <!-- This document is published in 12 different formats namely - DVI, Postscript, Latex, Adobe Acrobat PDF, LyX, GNU-info, HTML, RTF(Rich Text Format), Plain-text, Unix man pages, single HTML file and SGML. --> このドキュメントは 11種類の異なるフォーマット公開されています。 それらは、DVI, Postscript, Latex, Adobe Acrobat PDF, GNU-info, HTML, RTF(リッチテキスト形式), プレインテキスト, UNIX man ページ, 一つにまとめた HTML ファイル、そして SGML です。 <itemize> <item> <!-- You can get this HOWTO document as a single file tar ball in HTML, DVI, Postscript or SGML formats from - --> この HOWTO ドキュメント(原文)は以下のサイトで HTML, DVI, Postscript, あるいは SGML フォーマットの tarball の単一ファイルとして入手可能です。 <url url="ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO/other-formats/"> <!-- and <url url="http://www.linuxdoc.org/docs.html#howto"> --> そして <url url="http://www.linuxdoc.org/docs.html#howto"> <!-- <item>Plain text format is in: <url url="ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO"> and <url url="http://www.linuxdoc.org/docs.html#howto"> <item>Single HTML file format is in: <url url="http://www.linuxdoc.org/docs.html#howto"> --> <item>プレインテキスト形式は: <url url="ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO"> および <url url="http://www.linuxdoc.org/docs.html#howto">で入手可能です。 <item>単一の HTML ファイル形式は: <url url="http://www.linuxdoc.org/docs.html#howto">にあります。 <!-- <item>Translations to other languages like French, German, Spanish, Chinese, Japanese are in and <url url="http://www.linuxdoc.org/docs.html#howto"> --> <item>フランス語、ドイツ語、スペイン語、中国語、日本語のような他言語への翻訳文書は <url url="ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO"> および <url url="http://www.linuxdoc.org/docs.html#howto">で入手可能です。 <!-- Any help from you to translate to other languages is welcome. --> です。 他言語への翻訳を助けてくださる方を歓迎します。 </itemize> <!-- The document is written using a tool called "SGML-Tools" which can be got from - --> このドキュメントは &dquot;SGML-Tools" と呼ばれるツールを使って書かれています。 それはここで手に入ります。 <url url="http://www.sgmltools.org"> <!-- Compiling the source you will get the following commands like --> ソースをコンパイルすると、以下のようなコマンドを使う事ができます。 <itemize> <item>sgml2html CPU-Design-HOWTO.sgml (to generate html file) <item>sgml2rtf CPU-Design-HOWTO.sgml (to generate RTF file) <item>sgml2latex CPU-Design-HOWTO.sgml (to generate latex file) </itemize> <!-- LaTeX documents may be converted into PDF files simply by producing a Postscript output using <bf>sgml2latex</bf> ( and dvips) and running the output through the Acrobat <bf>distill</bf> (<url url="http://www.adobe.com">) command as follows: --> LaTeX 文書は <bf>sgml2latex</bf> (と dvips) を使って以下の様な Acrobat (<url url="http://www.adobe.com">) の <bf>distill</bf> コマンドを通じて出力し、Postscript 出力を作成することで簡単に PDF ファイルに変換できます。 <code> bash$ man sgml2latex bash$ sgml2latex filename.sgml bash$ man dvips bash$ dvips -o filename.ps filename.dvi bash$ distill filename.ps bash$ man ghostscript bash$ man ps2pdf bash$ ps2pdf input.ps output.pdf bash$ acroread output.pdf & </code> <!-- Or you can use Ghostscript command <bf>ps2pdf</bf>. ps2pdf is a work-alike for nearly all the functionality of Adobe's Acrobat Distiller product: it converts PostScript files to Portable Document Format (PDF) files. <bf>ps2pdf</bf> is implemented as a very small command script (batch file) that invokes Ghostscript, selecting a special "output device" called <bf>pdfwrite</bf>. In order to use ps2pdf, the pdfwrite device must be included in the makefile when Ghostscript was compiled; see the documentation on building Ghostscript for details. --> あるいは、Ghostscript の <bf>ps2pdf</bf> コマンドを使うこともできます。 <!-- This howto document is located at - --> この HOWTO ドキュメントの場所は <itemize> <!-- <item> <url url="http://sunsite.unc.edu/LDP/HOWTO/CPU-Design-HOWTO.html"> --> <item> <url url="http://sunsite.unc.edu/LDP/HOWTO/CPU-Design-HOWTO.html"> です。 </itemize> <!-- Also you can find this document at the following mirrors sites - --> 以下のミラーサイトでも、このドキュメントを見つけられます。 <itemize> <item> <url url="http://www.caldera.com/LDP/HOWTO/CPU-Design-HOWTO.html"> <item> <url url="http://www.WGS.com/LDP/HOWTO/CPU-Design-HOWTO.html"> <item> <url url="http://www.cc.gatech.edu/linux/LDP/HOWTO/CPU-Design-HOWTO.html"> <item> <url url="http://www.redhat.com/linux-info/ldp/HOWTO/CPU-Design-HOWTO.html"> <!-- <item> Other mirror sites near you (network-address-wise) can be found at --> <item> <url url="http://sunsite.unc.edu/LDP/hmirrors.html"> あなたの近所(ネットワークアドレスという点において)のミラーサイトはここで見つけられます。 <!-- select a site and go to directory /LDP/HOWTO/CPU-Design-HOWTO.html --> サイトを選んで /LDP/HOWTO/CPU-Design-HOWTO.html のディレクトリに進んでください。 </itemize> <!-- In order to view the document in dvi format, use the xdvi program. The xdvi program is located in tetex-xdvi*.rpm package in Redhat Linux which can be located through ControlPanel | Applications | Publishing | TeX menu buttons. To read dvi document give the command - --> このドキュメントを dvi フォーマットで見るには、xdvi プログラムを使ってください。 xdvi プログラムは Redhat Linux の tetex-xdvi*.rpm パッケージにあります。 これは ControlPanel - Applications - Publishing - TeX menu buttons に置くこと ができます。 dvi ドキュメントを読むには、以下のコマンドを実行してください。 <tscreen><verb> xdvi -geometry 80x90 howto.dvi man xdvi </verb></tscreen> <!-- And resize the window with mouse. To navigate use Arrow keys, Page Up, Page Down keys, also you can use 'f', 'd', 'u', 'c', 'l', 'r', 'p', 'n' letter keys to move up, down, center, next page, previous page etc. To turn off expert menu press 'x'. --> その後、マウスでウインドウサイズを変更してください。 ウインドウ内で文書の閲覧位置を移動するには矢印キー, Page Up, Page Down キーを使ってください。 また、'f', 'd', 'u', 'c', 'l', 'r', 'p', 'n' のキーを使って、上、下、 中心、次ページ、前ページなどに移動することができます。 エキスパートメニューを閉じるには 'x' を押してください。 <!-- You can read postscript file using the program 'gv' (ghostview) or 'ghostscript'. The ghostscript program is in ghostscript*.rpm package and gv program is in gv*.rpm package in Redhat Linux which can be located through ControlPanel | Applications | Graphics menu buttons. The gv program is much more user friendly than ghostscript. Also ghostscript and gv are available on other platforms like OS/2, Windows 95 and NT, you view this document even on those platforms. --> postscript ファイルを読むには 'gv'(ghostview) または 'ghostscript' プログラムを使います。 ghostscript プログラムは Redhat Linux の shostscript*.rpm パッケージに、 gv プログラムは gv*.rpm パッケージにあります。 これは ControlPanel - Applications - Graohics Menu buttons に置くこと ができます。 gv プログラムの方が ghostscript よりはるかにユーザフレンドリーです。 ghostscript と gv は OS/2 や Windows 95/NT などの他のプラットフォーム でも利用可能です。 このドキュメントはそれらのプラットフォーム上でさえ読めます。 <itemize> <!-- <item>Get ghostscript for Windows 95, OS/2, and for all OSes from <url url="http://www.cs.wisc.edu/~ghost"> --> Windows 95 や OS/2 その他すべての OS 用の ghostscript は <url url="http://www.cs.wisc.edu/~ghost"> で手に入れてください。 </itemize> To read postscript document give the command - <tscreen><verb> gv howto.ps ghostscript howto.ps </verb></tscreen> <!-- You can read HTML format document using Netscape Navigator, Microsoft Internet explorer, Redhat Baron Web browser or any of the 10 other web browsers. You can read the latex, LyX output using LyX a X-Windows front end to latex. --> Netscape Navigator や Microsoft Internet explorer, Redhat Baron Web browser あるいは他の 10種類のウェブブラウザで HTML フォーマットのこの文書を読むことができます。 <!-- ******************************************* ************ End of Section *************** ******************************************* <chapt> Copyright --> <sect> Copyright <p> Copyright policy is GNU/GPL as per LDP (Linux Documentation project). LDP is a GNU/GPL project. Additional restrictions are - you must retain the author's name, email address and this copyright notice on all the copies. If you make any changes or additions to this document then you should intimate all the authors of this document. <p> (参考として著作権に関する記述の訳を以下に示しますが、これはあくまで参考ですので 実際の著作権に関する事は原文の記述に従ってください。) <p> 著作権の方針は LDP(Linux Documentation Project) により GNU/GPL に基づきます。 追加の制限は - 著者名、著者の E メールアドレス、そしてこの著作権に関するコメントを すべての複製に記述すること - です。 このドキュメントに変更や追加をする場合は、このドキュメントのすべての著者に知らせてください。 <!-- ******************************************* ************ End of Section *************** ******************************************* --> <!-- The part below was added by translator --> <sect> 日本語訳について <p> 本ドキュメントの原文は <url url="http://www.linuxdoc.org/" name="LDP"> にあります。 再配布等にあたっては Copyright の原文を参照してください。 <p> 本ドキュメントを翻訳する際、JF-Project のメンバーの方々より多くの助言、指摘などを頂きましたのでここに紹介します。 <p> 翻訳に協力してくださった方々(50音順) <itemize> <item>川嶋 勤さん <item>千旦 裕司さん <item>後藤 正徳さん <item>後藤 雅晴さん <item>山崎 康宏さん </itemize> </article>