New Immissions/Updates:
boundless - educate - edutalab - empatico - es-ebooks - es16 - fr16 - fsfiles - hesperian - solidaria - wikipediaforschools
- wikipediaforschoolses - wikipediaforschoolsfr - wikipediaforschoolspt - worldmap -

See also: Liber Liber - Libro Parlato - Liber Musica  - Manuzio -  Liber Liber ISO Files - Alphabetical Order - Multivolume ZIP Complete Archive - PDF Files - OGG Music Files -

PROJECT GUTENBERG HTML: Volume I - Volume II - Volume III - Volume IV - Volume V - Volume VI - Volume VII - Volume VIII - Volume IX

Ascolta ""Volevo solo fare un audiolibro"" su Spreaker.
CLASSICISTRANIERI HOME PAGE - YOUTUBE CHANNEL
Privacy Policy Cookie Policy Terms and Conditions
論理合成 - Wikipedia

論理合成

出典: フリー百科事典『ウィキペディア(Wikipedia)』

論理合成(ろんりごうせい、: Logic synthesis)とは、抽象的な回路の動作に関する記述(レジスタ転送レベルなど)から論理回路の実装設計を行う工程である。一般にVHDLVerilogなどのハードウェア記述言語が使われる。ツールによっては、PAL や FPGA といったプログラマブルロジックデバイス向けの bitstream を生成する。また、ASIC向けの生成を行うツールもある。論理合成はEDAの一部である。

目次

[編集] 歴史

論理合成の歴史を遡ると、ジョージ・ブール(1815年 - 1864年)にたどり着く。彼はブール代数などにその名を留めている。1938年、クロード・シャノンは、二値ブール代数でスイッチング回路の動作を記述できることを示した。当初、論理設計にはカルノー図と呼ばれる一種の真理値表が使われていた。カルノー図を使うと、図の中のエントリ群をまとめることで論理の最小化ができる。人間の設計者がカルノー図で設計できる論理回路は、せいぜい4から6変数までである。

論理最小化の自動化への第一段階は、コンピュータ上で実行できるクワイン・マクラスキー法の登場であった。これにより加法標準形乗法標準形で2段の論理ゲートを最小化する手法が確立した。その他の初期の論理最小化の研究として、有限オートマトンの符号化と状態最小化があった。論理合成の主な応用としてデジタルコンピュータ設計がある。初期の論理合成自動化については、IBMベル研究所が重要な役目を果たした。その後、プログラマブルロジックデバイスの登場によって効率的な論理最小化の必要性が増した(論理最小化によって回路規模を低減させるため)。

しかし、VLSI設計においては、そのような論理最小化も手法の1つにすぎない。実際、レジスタ転送レベルでの回路表現は一般に2段以上の論理ゲートに対応する。初期の多段論理回路設計システムとして IBM の LSS がある。LSS は局所的変換を使って論理を単純化する。LSS と Yorktown Silicon Compiler により1980年代の論理合成の研究が進んだ。いくつかの大学が研究成果を公開した。カリフォルニア大学バークレー校の MIS、コロラド大学ボルダー校の BOLD などが有名である。その後、これらの技術が商用の論理合成ツールに導入され、市販されるようになった。

[編集] 動作合成

設計者の生産性向上を目的として、ハードウェア記述言語(HDL)を使った動作レベル記述による回路合成の研究が数多く行われた。動作合成(Behavioral Synthesis)とは、動作に関するHDL記述をレジスタ転送レベル(RTL)の記述に変換することであり、RTL は論理ゲートレベルの論理合成の入力となる。動作最適化は、必要となるハードウェア部品数や状態数などに基づくコスト関数により行われる。コスト関数は、その設計の実装に必要な回路量の大まかな予測を提供する。動作レベルの記述や動作合成とレジスタ転送レベルの記述による論理合成は、最近では明確に区別される傾向がある。

タスクのスケジューリング、リソース割り当て、共有などにより、RTL記述のデータパスと有限オートマトン(FSM)が生成される。スケジューリングは時系列での操作割り当てであり、リソース割り当ては操作や変数へのハードウェアリソースの割り当てである。スケジュールが与えられると、リソース割り当てにより必要なハードウェアの量が最適化される。

[編集] 多段論理の最小化

論理関数の典型的な実用的実装では、論理要素の多段ネットワークが使われる。RTL記述を出発点として、論理合成ツールは設計に対応する多段ブーリアンネットワークを構築する。

そして、このネットワークをまず実装に依存しない技法で最適化する。実装に依存しない最適化での典型的なコスト関数は論理関数の総リテラル数である。

さらに、実装依存の最適化では、上記で得られた論理回路を指定された実装の論理ゲートのネットワークにしていく。コスト関数もより具体的なものとなっていく。例えば、利用可能な論理ゲート数の上限、各ゲートのサイズの下限、許容遅延範囲、消費電力などにより回路が最適化される。

[編集] 商用ツール

[編集] 参考文献

  • Electronic Design Automation For Integrated Circuits Handbook, by Lavagno, Martin, and Scheffer, ISBN 0-8493-3096-3 EDAに関する調査。本項目の本文は Sunil Khatri と Narendra Shenoy による Volume 2, Chapter 2, Logic Synthesis に基づいている。
  • A Consistent Approach in Logic Synthesis for FPGA Architectures, by Burgun Luc, Greiner Alain, and Prado Lopes Eudes, Proceedings of the international Conference on Asic (ASICON), Pekin, October 1994, pp.104-107.
他の言語

Static Wikipedia (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -

Static Wikipedia 2007 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -

Static Wikipedia 2006 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu

Static Wikipedia February 2008 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu