このページは旧年度版です。トップページから最新年度に移動してください。

 

2016年度コンピュータ・サイエンス演習

離散フーリエ解析とデジタル信号処理 (2017/16年版) 

 

 

MEIJI University Computer Science 2016 By Renji Mikami
 
 
Please visit Cypress CUA potal site. You can get much more helpful information.
 
 
Please contact support staffs in Top page. Log in name and password will be given if appropriate.
 
     
 
演習の開始にあたって ガイダンス2016
 
 
学籍番号とチーム組みについて演習初日に解説します
 
 
注意:ブラウザに古いキャッシュが残っている場合がありますから、必ずリロードしてください。
 
           
   
2016年B3コース  2016年TOPに戻る
   
 
この演習では、研究や開発分野で広く応用されているフーリエ解析とデジタル信号処理の基礎を学習します。これらは、研究分野でも実社会での開発設計やアルゴリズム開発でも広く使われている、重要で、かつ役にたつものです。またやってみると実に面白く奥の深い分野でもあります。
 
本講座では、数学的基礎の解説からはじめます。ベクトルの直交と積分変換から始まり、実数から複素数領域、連続量から離散化、FFT計算アルゴリズムと進みます。フーリエ解析は時として"単位の鬼門"と呼ばれることもありますが、机上の計算に埋没すると難解にも見えますが、本講座では、数式計算ソフトウェアを駆使して、数式の意味を直観的に理解していきます。得られた知識は、システムに実装して動作させることによって検証され、理解が深まり、身につきます。これらの知識と経験は一生の財産になります。
フィルタ設計では、さらに線形時不変システムも扱います。
これらの広い分野は複数の専門分野に分断され、理学(数学、物理)、工学、コンピュータ科学の専門分野として独立して発展しています。そのため、全体の見通しが難しく、わかりづらくなっています。
 
この演習では、数学的基礎の復習から始め、実際のフーリエ解析システムの実装までを行います。各専門分野を横串にして、信号処理山頂のゴールを目指します。難しそうな数式や理論も実装してみることで、よくわかります。みんなで山頂から、理工学とシステムのすばらしい眺望を楽しみましょう。わかってしまえば、応用やアイデアが次々とひらめきます。
2012年から2015年の皆さんの発表課題が、Wikiサイトにあります。
サーバーが落ちている場合、ミラーサイトの用意のあるときは、ミラーサイトにアクセスしてください。
         
      担当講師:三上廉司(ミカミ設計コンサルティング)    

 

 
           
 
成績評価基準と配点 出席(演習状況)60 : レポート40 (欠席は出席点、レポート点双方がゼロになります。)

MikamiNet Wikiへ ジャンプ (VPN接続されていないと表示されません。)

 
    原則として、10〜30分遅刻は遅刻減点、30分以上の遅刻は、欠席扱いとなります。また提出期限を超過したレポートは受領されませんので期限を厳守してください。   課題発表 Wiki サイトへジャンプ  
   

     
   
2016年B3コース  2016年TOPに戻る
 
           
   
予習復習用 講義ビデオリンク
  課題発表用 サイトリンク  
   
     
   

講義の流れ(参考) flips2015.pdf  ミラーサイト

講義の流れの解説ビデオ (wsDAVvVsME8)

 

2016年全4回の演習の進め方とレポート

2016_B3_EX0.pdf (プリント必要)

 
   
第1回目に使用する演習資料1-3
 

資料1 2016_B3_EX1.pdf (プリント必要)

 
   

ビデオ 関数とベクトルの直交と積分変換(ZfLbszoIoEg)

  資料2 2016_B3_EX2.pdf (プリント必要)  
    ビデオ 積分変換から離散フーリエ変換へ (Ew-TbIWA5Fo)   資料3 2016_B3_EX3.pdf (プリント必要)  
    ビデオ 級数式と係数式 (NwecPDw)      
   

 

 

4.離散フーリエ変換 講義資料

 
   
第2回目に使用する演習資料4
  資料4 2016_B3_EX4.pdf (プリント必要)  
    ビデオ 離散フーリエ変換(pLh38sYPDao)   CS_HW4_2016.pdf ミラーサイト (参考資料)  
   
第2回目に使用する演習資料5
  5.高速フーリエ変換  
    ビデオ 高速フーリエ変換(egIjMj-XRwk)   講義資料 CS_HW5_2014.pdf ミラーサイト (参考資料)  
   
第3回目に使用する演習資料6
  資料6 2016_B3_EX6.pdf (プリント必要)  
   

 

  6.デジタルフィルタ  
    ビデオ デジタルフィルタ1 (iN2TCMfpq3c)   講義資料 CS_HW6_2015.pdf ミラーサイト (参考資料)  
    ビデオ デジタルフィルタ2 (oSZfKHvxCNw)      
   
第4回目の課題発表サイト
  課題発表用 サイトリンク  
           
 
PSoC3/5 開発環境インストール
マスタープロジェクトのダウンロード  
        デスクトップ:\psoc_lab5_masterに解凍してください PSoC5_Lab_master2013.lzh  
   

サイプレス社のサイトから、PSoC Creater をダウンロードしてください。(演習で使用する基板には、デフォルトではPSoC5が実装されているので、この場合は、バージョン2.1を使用します。PSoC5には、PSoC5とPSoC5LEがありますので、インストールするソフトウェアのバージョンに注意してください。)サイプレス社のサイトから、PSoC Programmerr をダウンロードしてください。

PSoC Createrは、PSoC3/5を開発できます。PSoC Programmerは、PSoC1/3/5 すべてのPSoCの書き込みができるソフトです。

書き込み器は、MiniProgが、PSoC1 用、MiniProg3が、PSoC1/3/5用です。8CKIT-030/050基板には、書き込み回路が基板上にあるので、MiniProgがなくとも書き込みできます。

 

演習の参考プロジェクトです。

プロジェクトは、できるだけ、C:の直下、のなるべく階層の浅い場所に置いてください。

例:C:\PSoC35_Lab\ というディレクトリを作成し、その下にプロジェクト名をつけたサブ・ディレクトリを作成することをお勧めします。

ディレクトのパスには、日本語文字が入らないようにしてください。プロジェクト名も日本語の使用を避けてください。

 
 
コンパイラとライセンス
コース共通参考資料 (演習使用は、8CKIT-050)  
   

PSoC5とPSoC3は、プロセッサ以外のハードウェアは、ほぼ同じです。プロセッサが異なりますので、コンパイラが異なります。PSoC5は、ARM Cortex-M3 32bit用にGCCを使います。PSoC3は、8051プロセッサ用にKEIL社のCコンパイラを使います。どちらも無償ですが、メイル・アドレスを明記して、有効期間つきのライセンス・コードを取得して、速やかにアクティベーションをしてください。

PSoC3は8bitですが、PSoC5は、32bitになりますので、メモリ・モデルが異なっています。このため、Cベースで設計したPSoC3とPSoC5は、設計プロジェクトレベルでの完全な互換性はありません。これは、DMAを使用した場合の転送元、転送先の指定などで顕著になります。互換性を持たせたコーディングの方法は、DMAの設計資料の中に記載がありますので、互換性を重視する場合は、これ(演習中に解説します)も参照してください。

2012年リリース段階では、PSoC3は、Production版が出荷されています。これに対してPSoC5は、ES1(ES:Engineering Sample)です。このES版からPSoC5が作られ出荷されました。現在PSoC5のProduction版は、PSoC5LEになっています。

エラッタ(演習で解説します)に注意して使用してください。

演習使用の基板等は講座中でも講座前でも終了後でも貸し出しもしますので申し出てください。

 

参考資料 8CKIT-050回路図 8CKIT-030回路図 基板自体の回路図は同じです。搭載しているPSoCデバイスだけが違います。050基板にチップは、2012年時点では、ES1が乗っていますから、Productionが出荷されたら、交換(かなり上級の腕が必要とされますが.....)してください。

情報リンク PSoC5/3 のアーキテクチャ、レジスタのTRM(Technical Reference Manual) などをまとめた サイプイレス社のサイトへのリンク (英文 PSoC5 Architecture TRM を参照してください。)

参考資料 : 日本語でスピーディーに PSoC5のアーキテクチャを理解する場合に利用できます。 CY8C53-62940 日本語版デバイス データシート  (CY8C53シリーズ用のものですから、設計の場合は、実際に使用するデバイスのデータシートを使用してください。)

参考資料 :8CKIT-050使用デバイス CY8C5588AXI-060 TQFP100 ES1 CY8C55ファミリのデータシートサイト (英文)

参考資料 :8CKIT-030使用デバイス CY8C3866AXI-040 TQFP100 CY8C38ファミリのデータシートサイト (英文/和文)

参考資料: My First Five PSoC3 Design サイト(英文)

 
    A.計算機システムのボトルネックとDMA   C言語の基礎 ProgrammingPlacePlus  
           
    講義資料 CS_HWA_2012.pdf (DMAの基礎) PSoC35/DMA参考資料(英文)   アニメーションによる解説サイト(信州大学)  
        函数の収束(一様収束と各点収束)理系インデックス  
           
 
デバイス概要、技術導入講義
情報科学、数学物理学関連導入  
    1.PSoC5/3について   1.波、物質とエネルギー、連続と離散  
    講義資料 EM35_1.pdf (PSoC 5/3 概要) 1 講義資料 CS_HW1_2013.pdf ミラーサイト (Fourier Transform への基礎)  
       
旧版演習資料 2012_B3_EX1.pdf
 
        2.複素関数追補 ネイピア数,ラプラス変換とフーリエ変換の数学  
 
設計演習(デバイス) 1 講義資料 CS_HW2_2015.pdf ミラーサイト (フーリエ変換のための数学の基礎)  
    3.1.文字の表示と設計の流れの理解  
旧版演習資料 2012_B3_EX2.pdf
 
  1

演習資料 3.1 HELLO_WORLD_35.pdf ミラーサイト 参考Char_LCD_68591_00_V.pdf

  3.フーリエ級数、フーリエ変換の導出  
      1 講義資料 CS_HW3_2015.pdf ミラーサイト  
    3.2.ソフトウェアによるI/O制御 (LEDの点滅)  
旧版演習資料 2012_B3_EX3.pdf
 
  1 演習資料 3.2 SW_LED_35.pdf ミラーサイト   4.離散フーリエ変換  
      1 講義資料 CS_HW4_2016.pdf ミラーサイト (連続関数の離散化)  
   

3.3.PWMの実装(LEDの点滅)

 
旧版演習資料 2012_B3_EX4.pdf
 
    演習資料 3.3 PWM_LED_35.pdf ミラーサイト 参考PWM_69317.pdf  

5.高速フーリエ変換

 
  1 演習資料 3.3 PWM_LED_B_35.pdf 2 講義資料 CS_HW5_2014.pdf ミラーサイト (アルゴリズムによる高速化)  
       
旧版演習資料 2012_B3_EX5.pdf
 
    4.DMAによるメモリデータ転送(サイン波の生成)   6.デジタルフィルタ (Z変換、線形時不変システム)  
  2 演習資料 4.1 DMA_DAC_35.pdf ミラーサイト PSoC35/DMA参考資料(英文) 2 講義資料 CS_HW6_2015.pdf ミラーサイト  
       
アベレージング・フィルタ演習用エクセルフォーム AF_48_Form.xls
 
    5.AD変換(デルタ・シグマADCによるAD変換)  
旧版演習資料 2012_B3_EX6.pdf
 
  2 演習資料 5.1 ADC_35.pdf ミラーサイト ADC_DMA_Example.pdf (英文)   A.計算機システムのボトルネックとDMA  
        講義資料 CS_HWA_2012.pdf (DMAの基礎) PSoC35/DMA参考資料(英文)  
  2

6.GPIO(ピン入出力信号の制御)

     
    演習資料 6.1 GPIO_35.pdf ミラーサイト  

B.N次化への考察と自由研究 講義資料 CS_HWB_2012.pdf

 
        2次画像、N次応用、ウェーブレット変換  
  2 7.シリアル通信 (PSoC Creater のExample Project にあります。)      
    UART_TX_35.pdf UART_RX_35.pdf
計算ツール (Maxima/エクセル/DFT)  
           
  3 8.デジタル フィルタの設計(FIRによるローパス・フィルタ)   計算演習 CS_MATH_EX_1.pdf エクセル SIN_5.xlsx  
    LPF_35.pdf Filter_SampleProject.pdf 参考Filter20_70173.pdf   A.補助講義A CS_APDX_A.pdf B.補助講義B CS_APDX_B.pdf  
           
  Compiler_Option ミラーサイト
Maxima WEB マニアル   Maxima ダウンロード  
           
           
 
フーリエ変換システムの実装と研究(標準課題)
レポートについて(履修学生の場合のみ)  
    参考資料 AN42877_12.pdf 64ポイントFFTのコード   レポートは手書き(鉛筆可)です.(図版,ソース,引用資料リストなど添付資料等は印刷物でもかまいません)使用言語は、日本語または英語とします。  
    F1.全体のアーキテクチャ   レポート用紙右上空白部に、必ずチーム番号を記入してください。  
    F2. AD変換部      
    F3. フィルタ部      
    F4. DFT計算部   旧版第1回のレポート課題 2015_B3_RP1.pdf  
    F5. FFT処理部      
    F6. 表示とデータ転送   旧版第2回のレポート課題 2015_B3_RP2.pdf  
           
 
FFTの参考サイト 京大大浦先生   旧版第3回のレポート課題 2015_B3_RP3.pdf  
    20世紀を変えた10のアルゴリズム      
    フーリエ変換を10倍高速化するアルゴリズム   旧版第4回のレポート課題 2015_B3_RP4.pdf  
    SFFT http://groups.csail.mit.edu/netmit/sFFT/      
           
 
デジタルフィルタの設計と実装(拡張課題)   第4回のレポート課題  
    デジタルフィルターワークショップ:2012_DFWS1.pdf  

この日レポート課題は、演習課題で発表したテーマをレポートにします。他のチームの講評も含まれますので、他のチームの発表もよく聞いておいてください。

 
 
第4回は、課題演習の発表      
    発表課題は共同研究者とともに完成してください。発表内容はWikiフォーマットで作成してください。      
           
 
     
           
           
           
           
           
           
           
           
           
           
        最終評価 : S A B C F