サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
Google I/O
laputa.cs.shinshu-u.ac.jp/~yizawa
これらの動作上の違いを理解して下さい。 なお、次章で述べる レジスタ や カウンタ は、これらの フリップフロップ をベースに構成したものです。 2.1 RS-FF (リセットセット フリップフロップ) この RSフリップフロップ は、すべての FFの基本 となるものです。 先に述べたように、リセットという入力が1になると、現在の状態に かかわりなく 出力は無条件に 0となります。 逆にセットという入力が 1になると、 出力は 無条件に 1になります。 入力がともに 0 であれば、その前の状態を保持します。 なお、2つの入力(R,S)は互いに矛盾するため、これらが 同時に1になることは禁止されています。 以下に示す 遷移表 は、この RS-FF の動作を記述しています。 RS-FFの遷移表 この 表から、次の状態 Q n を入力 ( S , R )と Q を用いて表します。
画像の符号化 (Image Coding) 1. はじめに ここでは、画像を圧縮する符号化方式の概要について紹介します。 画像信号の情報量は極めて多く、伝送や蓄積を効率的に行うため、これらを圧縮する技術が用いられています。 これらの技術を、符号化(Image Coding)と言います。 この符号化では、方式の互換性を保証するための標準化が重要です。 たとえば、JPEG方式やMPEG方式は、ISO等の機関が中心となって、標準化作業が行われています。 なお、厳密には「符号化」は次の2つに分類されます。 (1) 情報を圧縮する情報源符号化 (Source Coding) (2) ネットワークや伝送路の特性に合わせて、変調や誤り訂正等を行う通信路符号化 (Channel Coding) ここでは、(1)の情報源符号化について解説します。(以下単に、「符号化」と呼ぶことにします。) なお、画像符号化
1. 同時処理文と順次処理文. VHDLには,「 同時処理文 」と,「 順次処理文 」があります. 「 architecture 」本体には,「 同時処理文 」を並列に記述します. 実際の論理回路は,常に「 activeな状態 」にあるため,本来「 同時処理文 」で表現するのが自然です. 「 同時処理文 」に対して,「 順次処理文 」があります. 「 順次処理文 」は,ソフトウェアの「 逐次的な構文 」を用いて,「 ハードウェアのモデリング 」を行うものであり, 同時処理文に比べ,「 より抽象的な動作 」を直観的に記述することが可能です. 後で説明する「 プロセス文 」の内部は,この「 順次処理文 」が使用されます. 例えば,「 if文 」や「 case文 」,「 loop文 」などが,その代表的なものです. 「 同時処理文 」,「 順次処理文 」というのは,あくまでVHD
シンプルなCPUを作ってみよう (ver. 2 2007.5.9) 信州大学工学部 井澤裕司 このコンテンツでは、ハードウェア記述言語のVHDLを用いて,「 シンプルなCPU 」 を設計する手法 について解説します. 一般に,CPUの設計には、算術演算回路(ALU)等の論理回路から,コンピュータアーキテクチャ の命令セット,アセンブリ言語まで幅広い知識が要求されるため,初心者には「 ハードルの高い 」 ものとなってしまいます. 一方,ソフトウェアの「 C言語 」は,情報系の基礎科目となっており,工学を志すほとんど すべての学生が使いこなすことが可能です. そこで,本コンテンツでは,極めて単純な命令セットをもつCPUの動作を,ソフトウェア上で シミュレーションする「 CPUシミュレータ 」を,C言語を用いて制作します. 次に,この「 CPUシミュレータ 」を,ハード
VHDLの構造化プログラミング手法 −コンポーネントを用いたタイマー回路の設計− ver.2 (2007.5.7) 信州大学工学部 井澤裕司 1.はじめに 本章では,「 VHDL 」 の「 構造化プログラミング手法 」 として,「 コンポーネント 」 を用いた 回路記述方法について,解説します. 「 回路規模 」 が大きくなると,「 VHDLのソースコード 」 が肥大化し,「 全体の構造 」 が把握し難く, 「 拡張性 」 ,「 汎用性 」 に欠ける記述となってしまいます. これを避けるため,目的とする回路の機能や構造を分析して,単純ながら 「 汎用性 」 のある 「 部品 」 を, 「 コンポーネント 」 として定義し, これを「 階層的 」 に組み合わせる「 構造化プログラミング 」 が用いられます. 本授業の目的である 「 CPUの設計 」 にも,この 「 構造化
論理回路2 第4章 順序回路の基礎(その3) −カウンタ回路(非同期式)− 信州大学工学部 井澤裕司 1 はじめに 代表的な順序回路にカウンタがあります。 カウンタとは、入力となるクロックや信号の数を計測する回路であり、コンピュータをはじめ、様々なICやLSIに 数多く用いられています。 例えば、ディジタル時計では、1秒に1回のパルス信号を60回計測して、1分を計測します。 同様に、1分を60回、1時間を24回、1日を30回(あるいは29、31回)計測するカウンタ群が内蔵されています。 このカウンタには、クロックに同期して動作する同期式カウンタと、そうではない非同期式カウンタがあります。 本章では、比較的簡単に実現できる非同期式カウンタの構成法について解説します。 2 非同期式カウンタの構成法 2.1 1ビットカウンタの従属接続 第3章で説明した1ビットの2進カウンタ
窓関数 (Window Function) 信州大学工学部 井澤裕司 1. 離散フーリエ変換と窓関数 この章では、離散フーリエ変換に用いる窓関数について学習します。 長い信号のスペクトル解析では、信号の一部を切り出してフーリエ変換を行います。 しかも、計算機を用いる場合は、離散値のデータを用いざるを得ず、離散フーリエ変換となります。 その場合の第1の課題は、切り出すデータの数をどのように決めるかということです。 データ数が少ないと、周波数分解能すなわちスペクトルの精度が低下してしまいます。 一方、データ数が多いと、計算量はデータ数の2乗で増え、処理時間が急激に増えてしまいます。 第2の課題は、切り出したデータの両端の影響をどのように押さえるかということです。 すなわち、離散フーリエ変換では、暗黙のうちにデータの周期性が仮定されているため、 右端と左端のデータ値が大きく異なると、その部分で急
本章では,C言語を用いて「 CPUシミュレータ 」を制作します. CPUやアセンブリ言語に習熟している場合は,本章を読み飛ばし第2章に進んでも結構です. しかし,アセンブリ言語を用いたプログラミングや,その開発環境(クロスアセンブラ)に関連する内容が 含まれており,オリジナルプロセッサのアセンブリ言語を開発する際のデバッグツールとしても活用できます. プログラミング作業やそのデバッグに,かなりの時間や労力を要するかもしれませんが, これらの作業を通して,CPUの基本的な構成や動作が,具体的にイメージできるようになり, 目的地にいち早く到達することができるでしょう. 「 コンピュータアーキテクチャ 」の復習にもなりますので,しっかり学習して下さい. 2. 設計手法について 比較的単純なプロセッサの設計手法は,ハードウェア記述言語(HDL)関連の書籍で数多く紹介されています.
情報ゼミナール2003 (6/18) レポートと文章表現 情報工学科 井澤 裕司 1. 目 的 この「情報ゼミナール」をはじめとして、これから皆さんは実験や授業などで、レポートを何回となく作成し 提出することになります。今回は、この「レポートを作成する方法」について学習します。 レポートを書く目的は、下に示す技術的・学術的内容を、教官をはじめとする読者に伝えることにあります。 (1) 与えられた課題について学習した内容や研究した成果 (2) 様々な実験の課題や結果のまとめ、考察 (3) コンテストなどのため製作した作品、試作したソフトウェア等 これらは報告書(Report)であって、作文や感想文ではありません。 したがって、小説家が書くような名文・美文である必要はなく、”簡潔でわかりやすく論理的に明快な文章” を書くことが何よりも重要です。 これらのレポートを作成する能力は、大学のみならず
誤り検出方式 −巡回符号− 信州大学工学部 井澤 1. はじめに ディジタル信号の伝送・記録では、1ビットの誤りが致命的な問題を引き起こす可能性 があります。 このため、フロッピーディスクやモデム、Ethernetなどのネットワークの分野では、これ らの誤りを検出するため、巡回符号が用いられています。 いわゆるCRC(Cyclic Redundancy Checking)符号も、この巡回符号に属します。 ここでは、巡回符号による誤り検出の原理と、その構成法について紹介します。 2. 定義 ディジタル信号は0と1の符号で表され、コンピュータ内部では2進数による四則演算が 用いられています。一方、誤り訂正(検出)符号の構成法を記述する場合には、 この2進数の演算とは異なる「modulo2」と称する演算が用いられます。 はじめに、このmodulo2の演算について説明し
フーリエ変換とその性質 信州大学工学部 井澤裕司 1. はじめに 本章では、フーリエ変換について学習します。 フーリエ級数展開のある極限をとると、フーリエ変換が得られます。 このフーリエ変換は、変換と逆変換が共に積分の形になっており、ある意味では分かり難いと感じられる 方もいるのではないでしょうか? このような場合は、フーリエ級数展開をもう一度よく復習し、その極限を考えてみて下さい。 あるいは、この後解説する離散フーリエ変換を先に学習するのも、ひとつの方法です。 これらの方が、変換と逆変換の関係が直感的に理解しやすいためです。 それでは、フーリエ変換の変換・逆変換の関係を導きましょう。 はじめに、複素フーリエ級数展開について簡単に復習します。 この複素フーリエ級数展開では、周期 T0 をもつ連続信号を対象にします。 この複素スペクトル cn は離散スペクトルとなり、その間隔は 1/T0 で
論理回路2 信州大学工学部 井澤裕司 平成16年度から、情報工学科3年を対象に、「論理回路2」の授業を行います。 このコンテンツは、その教科書としてまとめたものです。 単なる理論として理解するのではなく、頭の中で具体的なイメージが沸くよう努力して下さい。 ■ イントロダクション ■ 第1章 はじめに −簡単な電卓を設計するには− ■ 第2章 順序回路の基礎(その1) −フリップフロップ− ■ 第3章 順序回路の基礎(その2) −応用方程式と2進カウンタ− ■ 第4章 順序回路の基礎(その3) −カウンタ回路(非同期式)− ■ 第5章 順序回路の基礎(その4) −カウンタ回路(同期式)− ■ 第6章 順序回路の基礎(その5) −レジスタ・シフトレジスタ− ■ 第7章 順序回路の応用(その1) −modulo2の論理演算回路− ■ 第8章 順序回路の応用(その2) −擬似
論理回路2 第5章 順序回路の基礎(その4) −カウンタ回路(同期式)− 信州大学工学部 井澤裕司 1 はじめに 4章では、非同期式カウンタを様々な種類のフリップフロップを用いて構成する手法について学習しました。 この非同期式カウンタの構成は単純ですが、段数が多くなると遅延時間も大きくなるという欠点があります。 また、例えば2のべき乗以外の数を計測する場合、非同期のクリア入力を用いるため、ハザードが生じないような配慮が必要になります。 このような理由により、非同期式のカウンタが大規模なLSIで使用されることはほとんどありません。 本章では、この非同期式に代わって広く用いられている同期式カウンタの構成法について解説します。 この同期式カウンタの設計手法の応用範囲は極めて広く、基本的にハザードの生じない順序回路を構成することが可能です。 順序回路の最も重要な項目のひとつですので
離散コサイン変換(Discrete Cosine Transform ; DCT) 1. はじめに 本章では、画像を圧縮するJPEGやMPEG等の符号化方式に用いられている離散コサイン変換 (Discrete Cosine Transform) について、解説します。 後ほど解説しますが、この離散コサイン変換は本資料の基礎編で解説した離散フーリエ変換の 特殊な場合と考えられ、実数の信号を同数の実数の変換係数に変換します。 離散フーリエ変換に比べ、特定の周波数成分に電力が集中しやすく、符号化効率が高いため、 画像符号化の標準化方式にも採用されています。 [補足] JPEG方式による画像の符号化 図1に、JPEG方式による静止画像の符号化手順を示します。 図1 JPEG方式による画像の符号化 A/D変換された画像信号は、縦横 (8×8) 画素のブロックに分割され、
サンプリングとそのスペクトル 信州大学工学部 井澤裕司 1. サンプリング信号のスペクトル サンプリング(標本化)とそのスペクトルの関係について考えてみましょう。 サンプリングは、下の図に示すように、連続信号 x(t) を時間 T 毎に離散信号 ‥ ,x(-T), x(0), x(T), x(2T), ‥に 変換する操作です。 なお、サンプリング周波数は fs = 1/T で表わされます。 2. サンプリング定理について 連続するアナログ信号をサンプリングして離散的な信号に変換する場合に、注意しなければならない条件があります。 はじめのディジタル信号処理の基本構成のところでも述べましたように、この条件を満たさないと、サンプリングした信号に、 本来のアナログ信号には含まれていない特有の歪(折り返し歪)が発生し、様々な悪影響をもたらすことがあります。 注意しなければならないことは、ある周波数で
コンピュータ・アーキテクチャ [補足資料] [論理回路]の復習 −簡単な電卓を設計するには− 信州大学工学部 井澤裕司 1. はじめに CPU(中央処理装置)の動作を理解し、オリジナルのCPUを設計するためには、 基本的な論理回路から、コンピュータ・アーキテクチャまで幅広い知識が必要です。 ここでは、その手始めとして「最も単純な電卓」を設計し、その動作について理解を深めます。 これらの学習は、1年や2年で学んだ「論理回路」や「コンピュータ工学」の復習にもなります。 さらに、「電卓」と「コンピュータ」の類似点・相違点について、整理してみましょう。 CPUの基本的な原理や構造が、やがて見えてくることと思います。 2. 簡単な電卓を作ってみよう 2.1 電卓の機能 コンピュータを用いて、1桁の10進数の和を計算する機能について学習するため、 電卓で検討してみましょう。 電卓の入力装置は、数字や
ディジタル信号処理とは 信州大学工学部 井澤裕司 1. アナログ処理とディジタル処理 信号には、アナログ信号とディジタル信号があります。 一般に人間の五感、すなわち、視覚、聴覚、触覚、嗅覚、味覚という感覚器官により測定される信号は アナログ量です。 これらのうち前半の3つについては、光、音、温度、圧力に関する物理量です。 また、嗅覚、味覚については明確な定義は困難ですが、イオン濃度等に置き換えて計測されることが あります。 極端にミクロな見方をしない限り、これらは連続した物理量であり、アナログ信号とみなせます。 一方のディジタル信号にはどのようなものがあるでしょうか? 身近な例では、ディジタル時計があります。 通常は1秒未満の表示は省略されるので、例えば1時1分1秒の次は1時1分2秒になります。 時間自体はいくらでも細かく観測できるアナログ量ではありますが、信号処理の過程で とびとびのディ
線形システム 信州大学工学部 井澤裕司 1. 線形システムとは これまでは、様々な信号とこれに対応するスペクトルの関係を中心に検討してきました。 本章では、「線形システム」とその特性について学習します。 この線形システムには入力と出力があり、それらの間には一定の関係が存在します。 本章の目的は、入力と出力の信号波形やスペクトルとの関係を明らかにすることです。 線形システムの特性が記述できれば、入力信号から出力信号を計算により求めたり、 逆に出力からその入力を計算することも可能です。 ここで扱う「線形システム」は、正確には「線形時不変システム」です。 (以下、単純に「線形システム」とします)。 連続信号における線形時不変システムの定義は、以下の通りです。 (1) 線形システム 入力 x1(t), x2(t) 出力 y1(t), y2(t) について x1(t) → y1(t), x2(t
ディジタルフィルタとz変換 信州大学工学部 井澤裕司 1. ディジタルフィルタとは この章では、「ディジタルフィルタとz変換」について学習します。 信号の中から、特定の成分を取り出したり除去する回路や機能をフィルタと言います。 また、そのような処理や操作をフィルタリングと称します。 コンピュータやDSP(Digital Signal Processer)を用いる場合は、離散値の信号を扱うので、必然的にディジタル フィルタとなります。 このディジタルフィルタは、線形フィルタと非線形フィルタに分類されます。 本章で扱うのは線形のディジタルフィルタであり、これらは以下に示す基本的な構成要素で構成されます。 (1) 遅延素子(1クロック) サンプリングの1周期(1クロック)だけ信号を遅延する素子であり、遅延を示すD を用いて表したり、 後述する z変換の伝達関数を用いてz-1 のように記述します。
論理回路2 第11章 ハードウェア記述言語(その2) −回路の表記法− 信州大学工学部 井澤裕司 1 はじめに 本章では、LSIの設計・開発に広く使用されている「ハードウェア記述言語(HDL)」の表記法について解説します。 前章で述べたように、「ハードウェア記述言語」として様々な種類が利用されていますが、ここでは国際的に広く使用されている VHDL (VHSIC Hardware Description Language)について紹介します。 このVHDLは極めて高い記述能力をもち、大規模なLSIの開発を効率的に進めることが可能です。 しかしながら、この限られたスペースでは、その全容を紹介することはできません。 ここでは、簡単な回路をいくつか例に挙げ、それらの表記法について紹介することに留めます。 説明が不足する部分が多々あると思いますが、それらについては、インターネット上の
論理回路2 第8章 順序回路の応用(その2) −擬似ランダムパターン発生回路− 信州大学工学部 井澤裕司 1 はじめに 前章では、「modulo2」の演算回路の構成法について学習しました。 本章では、この「modulo2」の演算の応用として、「擬似ランダムパターン発生回路」を紹介します。 「擬似ランダムパターン」(Pseudo Random Pattern)とは、0と1で構成されるビット列であり、携帯電話など通信路符号化の分野で広く用いられています。 0と1が一見ランダムに現れるように見えますが、実際には一定の周期をもっています。 このような擬似ランダムパターンは、modulo2の除算により生成される「循環小数」と考えることができます。 一定の次数(本章で説明)の中で、周期が最長となるものを「M系列」と呼んでいます。 この「擬似ランダムパターン」は、modulo2の除算回路
離散フーリエ変換(DFT) 信州大学工学部 井澤裕司 1. フーリエ級数展開との関係 はじめに、離散フーリエ変換(Discrete Fourier Transform; DFT)とフーリエ級数展開との関係について 整理します。 離散フーリエ変換は、これまで述べてきたフーリエ級数展開において、連続周期信号をサンプリングし、 離散周期信号に置き換えたものです。 たとえば、整数を N としてサンプリング周期 T、 周期 NT の関数を x*(t) とおくと、デルタ関数 δ(t) を用いて、 次のように表すことができます。 ここで1周期分を考えれば x*(t) は離散信号 x0 , x1, x2, ‥, xN-1 の関数となります。 次に、この関数1周期分について、これを複素フーリエ級数展開します。 小さな正数を εとして、以下の式が求められます。 このとき、デルタ関数 δ(t) の面積が T と
フーリエ級数展開 信州大学工学部 井澤裕司 フーリエ級数展開は、信号とスペクトルの関係を理解する上で最も重要な概念です。 その内容が把握できれば、フーリエ変換や離散フーリエ変換、サンプリングの物理的な意味や、 それらの相互関係を理解することも容易です。 ここでは、数学的手法に基く厳密な解説は避け、より直観的に理解できるようなツールをいくつか用意しました。 図中のボタンを操作することにより、関数の波形やフーリエ係数等の数値をインタラクティブに変更することが可能です。 これらを活用して、信号の対称性とフーリエ係数の関係や、直交関数のイメージについて、理解を深めて下さい。 1. 定義(その1) はじめに、フーリエ級数展開の定義を示しましょう。 周期関数を x(t) とします。ここで t は時間、T0 は周期を表します。 この関数が、ディリクレの条件を満たすとき、T0 の整数倍の周
論理回路2 第9章 順序回路の応用(その3) −巡回符号の符号・復号回路− 信州大学工学部 井澤裕司 1. はじめに 前章では、modulo2の除算回路の応用として、一定の周期を有するランダムパタンを生成する回路について紹介しました。 本章では、同じくmodulo2の除算の性質を用いて、ビット誤りを検出したり修正する回路について解説します。 ディジタル信号の伝送・記録では、1ビットの誤りが致命的な問題を引き起こす可能性があります。 このため、フロッピーディスクやモデム、Ethernetなどのネットワークの分野では、これらの誤りを検出するため、巡回符号が用いられています。 いわゆるCRC(Cyclic Redundancy Checking)符号も、この巡回符号に属します。 送信側の符号器で、伝送するビットに検査用のビットを追加します。 この検査ビットは、前章で説明した原始多項
コンピュータ・アーキテクチャ [補足資料] (CPUの高速化手法) 信州大学工学部 井沢裕司 1. はじめに 平成14年度、情報工学科3年を対象に「コンピュータアーキテクチャ」を開講します。 教科書は別途指定したものを使用しますが、いくつかの項目についてWWWによる補足資料を 作成しました。 ここでは、「中央処理装置(CPU)を高速化する手法」を中心に解説します。 分かりやすい説明を心がけたつもりですが、不明な点、あいまいな点、誤り等がありましたら、お手数ですが メール等で井澤(e-mail : [email protected])までお知らせ下さい。 本資料が有効に活用されることを願っています。 2. 高速化手法の分類 中央処理装置(CPU)を高速化する手法として以下のような方式があります。 パイプライン方式 分岐予測方式 スーパーパイプライン方式 スーパースカラ方式
次のページ
このページを最初にブックマークしてみませんか?
『井澤裕司/信州大学 工学部 情報工学科』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く