« 2021年12月 | トップページ | 2022年2月 »

2022.01.31

ADCMP553を使って鋭いエッジのパルス発生回路を作る

Analog DevicesのADCMP553というICを使って鋭いエッジのパルスを発生させる回路を作ってみました。

Pulsegen

ADCMP553は、Rise timeが440ps、Fall timeが410psとスループットが非常に高いPECL出力のコンパレータです。

Risefall

このコンパレータの片方の入力を0.9Vに固定しておいて、もう片方の入力にLVCMOS18の信号を抵抗分圧して0~1.2Vにしたものを入れれば、ディジタルの信号をPECLに変換できるだろうという算段です。

Adcmp553

ADCMP553の出力はVCC-2Vに終端しなければならないので、254Ωと164Ωという抵抗でVCCとGNDに吊ります。しかし、この値だと、VCC-2Vになるのはいいのですが、インピーダンスが100Ωになってしまうことに後から気が付きました。

出力をオシロ(50Ω終端)で見て見ると、Lの時が1.3V程度、Hのときが2.1V程度かなと読めます。立ち上がり時間は約890psでした。

Adlk1

 

ADCMP553はPECL出力なので、このようにLの時の電圧が0になりません。ADCMP553の後ろに高周波トランジスタのBFR106E6327HTSA1CTでエミッタフォロアを作り、出力インピーダンスを50Ωで出してみました。

すると、Lが0.3V、Hが0.6Vと、0Vに近づいた感じがします。立ち上がり特性は430psと、ほぼデータシートどおりになりました。

Adlk6

ADCMP553の立ち上がり時間が440psというのは、同軸ケーブルのような重い負荷を通すと遅くなるのかもしれません。

オシロが50Ω終端なので、電圧は半分になっているはずですから、L=0.6V、H=1.2Vのはずです。ADCMP553の出力からだいたい0.7V低い値なので、エミッタフォロアで電圧降下しているのだろうと思われます。

Lを0V付近にしたいのですが、単純にコンデンサで切るだけではよい波形になってくれません。もう少し試行錯誤が必要です。

 

しかし、ADCMP553と高周波トランジスタのエミッタフォロアで、同軸ケーブルを駆動できるレベルの立ち上がりの鋭いパルスを簡単に生成できるということがわかりました。

 

| | コメント (0)

2022.01.29

ADC→FPGA(ZYNQ)→DACの遅延時間を測ってみた

Cosmo-Zに関して、「アナログ入力から入った信号をアナログ出力した際の遅延はどのくらいか?」というお問合せがありました。

使用しているADCはLVDSでシリアル化して出すものなので遅延が何クロック分もありそうだし、FPGAの中でデシリアライズする時間、DACの中で処理される時間を全部総合するとどのくらいになるのだろう・・と疑問に思ったので実際に実験してみました。

検証に使ったのは、こちらのCosmo-Z Mini。

Adcdacthroughput

Cosmo-Z MiniのADC入力にファンクションジェネレータから信号を入れ、それをZYNQの中で何もせずにDACに出力するというものです。

手始めに、矩形パルスで実験してみます。

Scope_92

見事に同じ波形が出ていました。

 

拡大してみると、FGのトリガ出力(緑)に対してCosmo-Zのほうが少し鈍っているように見えます。というのも、ファンクションジェネレータ(GW Instek SFG-2104)の信号として「トリガ出力」を使っているのですが、2nsで2.5Vまで立ち上がるというかなりスルーレートの高い信号であったため、DAC出力のほうが鈍っているように見えています。

Scope_91

遅延時間は約290nsでした。

 

次に別のファンクションジェネレータ(Agilent E4432B)で疑似乱数を

Scope_90

完璧に同じ動きをしています。

 

おまけとして、E4432Bでバーストパルスを作って、それをADC→FPGA→DACに通してみます。

Scope_93

Scope_94

正弦波の山谷は勿論、細かい凸凹まで忠実に再現されています。

 

ADCから入れた信号をDACから出せば同じ波形になるのはあたりまえなのですが、一度ディジタル化されて処理されているのかと思うと面白いものです。フィルタとか入れるとさらに面白いことができるのでしょうね。

さて、データシートを見てこの結果が正しいのかを検討してみます。

使用しているADCのレイテンシは16クロックと書かれていますが、シリアライズで2クロックかかるようなので、LVDSの出力に出てくるのは18個前のデータなのでADCで18クロック遅れると思われます。

FPGAはADCからの信号を受け取るためISERDESを使っていますが、シリアル化された14bitのデータをデコードするためのは、原理から考えれば2クロック分の遅延時間がかかります。ISERDESから出てきたデータを整列させるために1段のD-FFを入れているので3クロックかかります。

FPGAからDACに与える信号を作るためにODDRを使いますが、その前に1段のD-FFを入れています。

DACは中にD-FFが数珠つなぎになっていてRetimerという仕組みが入っているようで、おそらく6クロックはかかります。

トータルの遅延を図にすると下のようになります。

Latency

18+3+2+6=29 なので、ぴったりでした。まぁ、どこか1個か2個くらいは間違っているかもしれませんが。

 

結論を言うと、ADC→FPGA→DACのレイテンシは29~30クロックでした。意外とADCが大きい!?

29clkなのか30clkなのかはっきりしないのはアナログ回路の遅延もあるからだと思われます。

 

| | コメント (0)

Cosmo-Zの16bit版を2台製造

今まで、Cosmo-Zのアクリルケースとアルミケースのネジ穴とかコネクタの位置がわずかにずれている感じがしていたので、今回はケースの設計をやり直しました。

両方のケースのパーツが届いたので、Cosmo-Zを組み立ててみました。

Csz2

アルミケースに関しては前後の位置はぴったり合った感じがするのですが、

Csz4_20220129170701

あれだけ念入りに設計したのに、どうも基板の高さが1mmずれているような感じです。

Csz4

設計を見直してみると、ケースの中床を支えているタカチのMSCL-23というL字型金具の図面は、

Mscl23

↑のようになっていました。

穴の位置は中床を支えない方の辺から6mmなのですが、ケース設計時には中床を支える側から6mmにしてしまったようです。

Machigai

これが原因で基板の高さが1.4mm低くなってしまったようです。

ところが、前のケースは今より穴の位置が2.3mm高かったので、適正値より0.9mm高かったことになります。いったい何が原因で上にいったり、下にいったりするのか・・・。タカチのケースは私には難しすぎる。

 

一方、アクリルケースのほうは完璧に近い仕上がりでした。

厳密にいえばアクリルではなくポリカーボネートです。アクリルは割れやすいのでポリカーボネートにしたのですが、アクリルやさんから買っているので・・

今回はシルク印刷を入れました。ポリカーボネートというと黒っぽい色かと思って白いシルクにしたのですが、実際にはアクリルとほとんど変わない透明感でした。透明に白いシルクになってしまったで文字が見にくいかなと思ったのですが、これはこれでおしゃれかもしれません。

Csz1

あと、アクリル屋さんが、頼んでもいないのに各穴を角丸にしてきました。少し大きめの穴をあけているので無事にコネクタは入ったのですが、ぎりぎりで空けていたら入らなかったでしょう。くわばらくわばら。あと、ACアダプタの穴も大きくしたのでコネクタの黒い部分もずっぽりと入ります。これで電源コネクタの接触不良の懸念は解決。

LEMOコネクタの位置もぴったり。

Csz3

アクリル(ポリカーボネート)ケースの出来栄えとしては、いままでで一番良くなりました。

Csz5_20220129171301

 

肝心の性能はというと、無信号時の入力のヒストグラムはこのとおり綺麗なガウシアンになりました。16bit ADCなので無信号でも変換値は常に揺れていますが、そのゆらぎは6.4LSB程度です。12bit ADCの場合は0.5LSBなので、16bitのほうがノイズ性能としては上回っています。

Hist

単一の正弦波を入れたときのひずみ率も-80dBをクリア。

Spec_20220129171501

問題ありませんでした。

部品難の時期でいくつかの部品を代替品にしたので検査する場所が増えましたが、問題なく製造できました。

 

| | コメント (0)

2022.01.28

倉庫の片付け完了

ついに、特電倉庫の片付けが終わりました。

Souko_5

残置物も綺麗に撤収。

完全に撤収と言っても、家の近くの別のレンタル倉庫に移しただけなので、時間をかけてこれから一つ一つ捨てていくわけです。

Souko_6

Souko_7

元々は本郷の事務所を撤退するときに、思い入れがあって捨てられないものを倉庫を借りて保管していました。プリンタとかキャビネットとか、書籍とか。

 

ガラクタを3年間保管するのに90万円の賃料がかかりました。最初は資材や原材料なども保管していたのですが、そういった原材料や使えそうな機材はだんだん減っていって、使わないものばかりを保管していたような気がします。この荷物に90万円の価値があったかというと疑問に思えてきます。

いつか使うかもしれないと思って取っておいたFPGA評価ボードとかもたくさんあるのですが、結局、3年間使いませんでした。Virtex-4なんてのも久しぶりに見ました。

評価ボードは捨てませんが、事務機器とかPCI-Eのジャンクボードとか、本郷を撤退するときに最初から全部捨てておけばよかったのかもしれないと少し後悔しています。

思い出と決別するのは難しいですね。

 

| | コメント (0)

2022.01.26

倉庫にあった大型家具を処分

特電倉庫にあった大型家具をオフィス家具のリサイクル屋さんに回収してもらいました。

「朝9:30~10:30の間に回収します」と言われたので、今日は朝イチで倉庫で作業です。

台車にこの本棚を乗せて、近くの大通りまで運びます。

Souko_1

この特電倉庫は、一方通行の細い道でしかたどり着けないので、大型トラックが入れません。

↓こんな道です。

Souko_3

Souko_4

近くの都道まで台車で自分で運び出さなければならないのですが、まぁ、この倉庫はとにかく交通の便で苦労しました。今となっては笑い話です。

あと少しで解約です。

Souko_2_20220128193001

残置物もあとわずかです。評価ボードとパソコンと・・・、使わなかった部品と事務機器かな。

3年間使わなかったので、きっと永久に使わないのでしょう。

 

| | コメント (0)

2022.01.25

Vivado 2019.2から2020.1への移行でハマったこと

私はVivadoは最新版を追わず、だいたい1~2年前のこなれたバージョンを使っているのですが、本日Cosmo-Zのデザインを2019.2から2020.1に移行したら意外なところでハマったのでブログに書きます。

Vivado 2019.2で作ったCosmo-ZのデザインをVivado 2020.1で開きます。

Update1

大きなエラーもなく開くことができたので、IP StatusでUpdate Selectedを行います。

特に問題なくUpdateできたのですが、論理合成しようとした際に大量のエラーがでました。

Update2

エラーというのは、こいう感じです。

[BD 41-237] Bus Interface property FREQ_HZ does not match between /SignalProcess/upp_0/DIN(125000000) and /SignalProcess/FILTER/cosmoz_data_combine_0/DOUT(100000000)
[BD 41-238] Port/Pin property FREQ_HZ does not match between /SignalProcess/FILTER/cosmoz_data_combine_0/clk(100000000) and /SignalProcess/adcblock_0/adcclk_o(125000000)
[BD 41-1031] Hdl Generation failed for the IP Integrator design D:/naitou/np1068/CosmoZFPGA2021-vivado2020/vivado/vivado.srcs/sources_1/bd/cosmoz_main/cosmoz_main.bd 

IPとIPの間をつないでいるAXI Streamのクロックの速度が両端で異なっているということのようです。どうやら、Vivado 2020.1ではValidateのときのクロック速度の伝搬がうまくいっていないように思われます。

どのように解決したかというと、

① エラーを起こしているIPをEdit in Packagerで開く

② Package IPを開き、Ports and Interfacesを開く

③ エラーを起こしているバスに関連付いているクロックのInterfaceのプロパティを開く
(バスのプロパティではない)

Update6

④ Parameters->Requires User Settingの中にあるFREQ_HZを適切に設定する

Update3 Update4

これでクロックの相違によるエラーは消えます。

VivadoではSynthesisの前にValidateを行います。Validateというのは信号の上流から下流に向かってバス幅やクロック速度などの情報を伝搬させていって、VHDLのGeneric(Verilogのparameter)を自動設定するとともにデザインルールチェックを行うものです。(と、私は解釈している)

こうやってエラーを一つ一つつぶしていったのですが、IPコアをUpdateした後でSynthesisを行うとエラーになったこともあります。

Update5

これは、IPコアを使うときにGenerateという作業が行われるのですが、下記のダイアログでSKIPしていた場合にはSynthesisのときにGenerateが行われるからです。GenerateというのはIPコアのソースをVivadoプロジェクトのローカルフォルダの中にコピーして(Update IPの本体)、軽く処理することだと解釈しています。もしかしたらラッパを作っているのかもしれません。

Update7

つまり、VivadoはUpdate IP → Generate → Validate → Synthesis → Implement → Generate BitStreamという流れで動いているのですが、Synthesisの際にまだGenerateされていないIPコアを見つけると、GenerateとValidateをやり直してエラーが出ていまうということもあります。結果として、エラーが次々と出てくるように見えます。

原因としてはクロック速度の伝搬がうまくいっていないだけなのでFREQ_HZを手動設定すればよいのですが、なぜ伝搬が自動でなされないんでしょうね。ちょっと疑問でした。

| | コメント (0)

2022.01.24

Cosmo-Z WinアプリのMDI化

Cosmo-Z Windowsアプリの大改造を行っています。

いままではMainFormに波形データを持たせていたのですが、それだと1個の波形しか表示できないので、過去に保存した波形と今キャプチャしている波形を見比べてみるといったことができません。

そこで、MDIアプリに改造しています。

子フォームを作って複数並べられるようにしました。

Mdiapp

いままでMainFormというクラス内で、ツマミが回されたりクリックしたりといったタイミングで自由に関数を呼び合っていたのですが、MainFormと波形ビューの間でやりとりするための関数を絞って徹底的なカプセル化を図っています。

MainFormを分割して、細かい部品に分解していっているわけですが、これがまた面倒くさい。アプリを1から作り直すレベルの大仕事になっています。

 

| | コメント (0)

2022.01.20

倉庫の片づけ

レンタカーで軽トラを借りて倉庫の片づけに行ってきました。

倉庫には2018年に本郷のオフィスを閉じた時に、「いつか使うかも」と思って捨てきれなかった物や、古い帳簿などを義務で保管していたのですが、少しずつ整理も進んできたので思い切って今月末で解約することにしました。

特電の倉庫は、到達できる唯一の道が「一方通行」「幅が細くて中型トラックが入れない」「16時以降は車両侵入禁止」という超絶アクセスの悪い立地にあります。車が入れないので倉庫として成り立たないのではないかと思うのですが、引っ越しの残り物を入れておくくらいのことはできました。

古い雑誌や帳簿類をトラックに載せて、自宅近くのレンタル倉庫に移動させました。保存義務の終了した帳簿はこれからシュレッダーしたり紙リサイクルに出したり、雑誌や書籍はお気に入りのを数十冊残し、時間をかけて捨てます。

Track_20220123131101

残りはジャンク基板やジャンク部品がたくさんと、古いPCが2台、事務機器(バーコードリーダーとかラベルプリンタとか)。

それから、本棚×3とキャビネット×1。この大型家具は来週中にオフィス家具屋さんに引き取ってもらう予定です。

Souko_20220123131101

まだ使えそうな綺麗なものまで廃棄するのはエコじゃないので、メルカリやヤフオクで売っていきます。

| | コメント (0)

2022.01.19

JTAGバウンダリスキャンを使ったFPGAの真贋判定サービスをはじめます

2022年に入ってからも電子部品の需給が相変わらず厳しい状況が続いています。現在の状況を一言でまとめると、Artix-7以降のFPGAであれば時間をかければ正規品が入手できますが、昨今の状況下ではそれ以前のFPGAの正規品はまず入手できません。

しかしながら、工場のラインなどでは10年、20年前に製造された機器はSpartan-3やSpartan-2、初代Spartanなど旧世代のFPGAを使用している基板のも多く、これらの製品はいまだに現役で稼働しています。そのような基板の再製造や保守には確実に旧世代のFPGAの需要も存在しているのですが、FPGAの流通在庫品の利用には偽物をつかまされるリスクがあります。

一般的にICの偽物には、異なるICのシルクを書き換えたものや、そもそも何も入っていないもの(石にピンを生やしただけの物)など、様々なバラエティがありますが、もし、偽物のICを知らずに実装してしまうと基板全体が動作しないばかりか、基板の他の部品を損傷したり、接続する他の装置を損傷するといった危険性があります。

Nisemono

昨今はマイクロスコープによる光学的確認や、X線による透視、I-V(電流電圧特性)カーブトレーサを用いた真贋判定が行われていて、真贋判定に特化したサービスを提供する会社もあり、それぞれの方法にはメリットデメリットがあります。

Juurai

これらの検査はどれも素晴らしいもので多くの真贋を判定できますが、XCS30とXCS40の違いや、XCF04SとXCF02Sのの違いなど、同一メーカー、同一ファミリで型番が異なるの判別ができません。なぜならば、同一メーカー、同一ファミリの製品では電源ピンやI/O、特定機能ピンの配置が同じであり、I-V特性もほぼ同じであるからです。

たとえば、Spartan-2のXC2S50のシルクを書き換えてXC2S150と称して流通在庫に流れてしまった場合、上記の従来の方法では判別することができません。

そこで、特殊電子回路では「同一ファミリ」内の贋物でも見分けられる方法として、JTAGバウンダリスキャンによる真贋判定を提案します。

その具体的な方法を説明します。まず、下の図のような検査基板を作成します。検査基板にはICソケットがあり、ここに検査対象のICを装着します。ICソケットにはQFP100,QFP144,QFP208,QFP240,BGA225,BGA324,BGA484,BGA676などを用意する予定です。また、検査基板はどんなICにも使えるよう、電源ピンの配置などは組み換え可能であるように設計します。

Kiban

この基板を介してICに通電することで消費電流を測ることができるので、シルクを書き換えた偽物ICや「中身なしIC」は即座に判別できます。

次にJTAGを通じてIDCODEを取得します。JTAGはほぼすべてのFPGAにあらかじめ組み込まれている機能で、ICの種類や、端子の状態を知ることができる、いわば工場出荷時の検査モードを実現するためのものです。JTAGのIDCODEはICの種類ごとに決まっているので、正常のIDCODEを読み取ることができれば、ICの中身は入っていて、少なくとも他のファミリでないことは判断できます。

Idcode_20220120034701

JTAGのIDCODEではデバイスに固有なので、メーカーはもちろんファミリや型番の違いが判別できます。

偽物を流通市場に流す悪徳業者は、安価で購入したICを高価なICに偽装するため、基本的には安価な偽造手口を使います。JTAGの回路やIDCODEを偽装したICを中に入れるということはまずありません。偽物のICであれば、電源投入時に電流異常で判断できるか、JTAGにアクセスできないか、もしくはより安いIC(例えばXC3S200Eを購入したつもりがXC3S50Eだった、など)のIDCODEが読み出されます。

このため、偽物のICかどうかが確実に見分けられるのです。ただし、XC6SLX45T-2とXC6SLX45T-3など、スピードグレードの違いや温度特性の違いはわかりません。

 

さらに、JTAGバウンダリスキャンを使えば、FPGAに何もプログラムされていない状態であっても、I/O端子を動かすことができるので、I/Oの端子のテストも可能です。中古品の正常性判定では、内部のワイヤが切れてなく正常に接続が維持されているかや、静電気や過電圧でI/Oが故障していないかどうかの判断などが可能です。

従来の方法とJTAGによる方法をまとめると下の表のようになります。

 

Hikaku_20220120032901

特殊電子回路では、このような「JTAGバウンダリスキャンによるICの真贋判定」というのを、サービスとして提供しようと考えています。

具体的にはお客様からFPGAをお送りいただいて、当社でJTAG検査を行います。当社ではIDCODEの照合と、全I/Oピンの入出力検査を行い、判定結果とFPGAをお返しするという形になります。

したがって、お客様はFPGAの現物をお送りいただくだけで良く、FPGAを使う回路の詳細や基板の仕様の提出は必要ないのでお客様の機密は保たれます。また、ツールを購入する必要も使い方を習得する必要もなく、現物をお送りいただくだけで利用可能です。

Flow

流通市場で入手したICが本物であるかどうかを確認する必要がある際には、ぜひとも特殊電子回路が提供する「JTAGバウンダリスキャンによる真贋判定」をご検討ください。

 

P.S. 

もし、このサービスにご興味がおありでしたら、Twitterで行っているアンケートにご協力ください。

https://twitter.com/nahitafu/status/1483635036624547843

 

Enquete

メールやTwitter、このブログのコメントなどでもご意見をいただけると嬉しいです。

 

 

| | コメント (0)

2022.01.12

風邪ひいた!?

朝から頭痛で起きられません。

昼過ぎにロキソニン飲んで、風邪薬飲んで、夕方またロキソニン飲んでやっと外に出られるくらいまで回復。

| | コメント (0)

2022.01.10

Cosmo-Zによる等価サンプリングの動画デモ

ここ数カ月の間、鋭意開発をしてきたCosmo-Zの等価サンプリング機能の開発が一段落したので動画にしました。

Cosmo-Zからパルスを出して、同軸ケーブルをつなげていって反射を測るというデモです。

最高で、毎秒1000回程度の等価サンプリングができ、その結果を記録できるようにもなりました。

これにて等価サンプリングはひとまず開発成功。

 

明日からは放射線計測機能の開発に入りたいと思います。

| | コメント (0)

2022.01.09

等価サンプリングの計測結果をファイルに保存できるようにした。

Cosmo-Zで、7.68GHzの等価サンプリングで8ch同時の反射測定ができるようになったのですが、オシロのように画面で見るだけではなくて、その結果を保存できるようにしようと思います。

Eqs0109

といっても新しくファイル形式を考えるのは大変なので、何度も繰り返し測った波形を並べることにしました。

Eqs0109_3

このような感じで、数分間繰り返し行ってその結果を記録できるようになった。

これで、長さや電気的特性(誘電率・透磁率)が時々刻々と変わる「変化する伝送線路」の反射波を数分間にわたって取り続けて記録することができるようになりました。

もし、Cosmo-Zの等価サンプリングにご興味をお持ちの方がいらっしゃいましたら、下記のURLから簡単な使い方の説明をダウンロードしてください。

等価サンプリング使い方.pdf

 

 

| | コメント (0)

2022.01.08

等価サンプリングで長時間サンプリングしたい

昨日は等価サンプリングのコアの部分をハードウェア化しました。

Cosmo-Zにはシーケンシャル・キャプチャという機能があって、同じキャプチャを100回とか10000回とか繰り返すことができます。昨日の等価サンプリングでは、必要になるキャプチャの繰り返し動作をこのシーケンシャル・キャプチャで実現していました。

今回の要求仕様は毎秒100回のサンプリングを2分というものなのですが、12000回のサンプリングが必要になります。シーケンシャル・キャプチャには弱点があって、毎回のサンプリングが128ポイント以上なければいけないという制約がありました。128ポイントの波形を96倍の等価サンプリングすると12288になって、1ポイントが2バイトで、それが8chあるので、1回のサンプリングが196kバイトになります。それが12000回あると2.4Gバイトのデータ量になってしまいます。

128ポイントというのは1.6マイクロ秒ですが、こんなに長い時間のデータはいりません。

今回は、数ナノ秒の間に起こる変化を長時間記録したいので、できるだけサンプリング長は短くしたいのです。

そういうわけで、測るべきタイミングでAXI StreamのDVALIDを有効にするような回路を作りました。

また、見たい部分(反射の先頭)を拡大して見られるようディレイを調整できるようにもしました。

通常のサンプリングで2クロック(25ns)の間を192ポイントに拡大することで、2分間測定しても約36Mバイトのデータサイズに収まるようになりました。

長時間の等価サンプリングによるデータロギングが見えてきました。

| | コメント (0)

2022.01.07

MMCMのPhase Shiftをハードウェアで自動化した

ZYNQ×ADCなデータキャプチャで高速な等価サンプリングを実現するのに重要なことはMMCMの位相シフトをハードウェアで自動化することです。

クロック80MHzを出力するMMCMのVCO周波数は960MHzなので、Phase Shiftの1tapは1/56/960MHz=18.6psになります。これを672tapずらすと元のクロックに戻ります。

一回の波形キャプチャが終了したらMMCMのPhase Shiftを動かしてADCのクロックを基準クロックに対して少しだけ(7tap=130ps)くらい動かすことを繰り返し、96回のサンプリングデータを時間軸をそろえて並べ替えれば、等価サンプリングで7680MHz相当のサンプリングになるというわけです。

この位相ずらしをハードウェア化しました。

MMCMの位相シフトにかかる時間は数百nsなので、9回ずらしても2マイクロ秒程度でできることがわかりました。

Eqs_0107

波形キャプチャ結果はこのようになります。

1回フレームのサンプリングを行うたびにサンプリングポイントが130psずつずれていくので、このように波打って見えています。

サンプリングポイントが移動していって24回のサンプリングで一周するという設定なので、毎回のサンプリングは520psずれていることになります。ですので、このデータを24回取って、時系列に並べ替えた結果が、これです。

Eqs_0107_2

波形が再構成され、反射が綺麗に見えています。

これで等価サンプリングのハードウェア化ができました。

波形キャプチャ後のデータの並べ替えまでハードウェア化できればいいのですが、それはいずれ別の機会にしましょう。

 

| | コメント (0)

2022.01.05

パルス送信基板の実装

Digikeyからようやく部品が届いたので、パルス送信基板を実装してみました。

Photo_20220113130301

その結果が、↓の波形。

Photo_20220106022101

うーん、なんだか遅くない?

 

空中配線で作ったパルス送信回路を持ち出してきて

Photo_20220113130401

再びオシロで測ってみると・・

Photo_20220106022102

基板を起こすよりも高速。

 

基板化することで配線のインピーダンスが減り、波形が鈍るのかな・・。

回路自体は単純なエミッタフォロアなので、もとの波形が鈍っていると考えたほうがいいかもしれない。直列終端抵抗やAC終端のコンデンサの容量を調整してなんとか波形を綺麗にしたけど、どうやっても2~2.5nsくらいが限度でした。

性能を求めるなら空中配線に軍配が上がるということかもしれません。

| | コメント (0)

2022.01.04

Cosmo-Z用ケースの設計

Almcase

Almcase2

| | コメント (0)

2022.01.03

イベントキャプチャの状況をWindowsアプリでモニタ

文章は後で書く

| | コメント (0)

2022.01.02

右クリックでサンプリング周波数とキャプチャ長を変更

Cosmo-ZのWindowsアプリで、右クリックして出てくるプルダウンメニューをいろいろ作っています。

まずは、水平スケールの右クリックしてサンプリングクロックとサンプリング長を設定できるようにしました。

Freqandlen

それから、各チャネルのトリガを右クリックして選べるように。

Trigsel

勢いで外部トリガの設定も作りました。

Exttrig

それから、現在NORMALモードなのかAUTOモードなのかがわかるようにAUTOとNORMALのボタンが青く光るようにしました。

Panel_indicator

 

 

| | コメント (0)

2022.01.01

あけましておめでとうございます

あけましておめでとうございます。

2018年に本郷の事務所を撤退してから早3年。技術的宿題の片づけとガラクタの整理をコツコツとやっていました。

3年間、一人だけの会社に戻して考え続けてきました。

特電がやるべきことは何か、と。

言い換えれば、特電にしかできないことで世の中の役に立つことは何か。

 

それは、物理計測にFPGAを使うことの普及と、包括的なJTAGソフトウェアの開発です。

この2つをさらに伸ばせるような一年にしたいと思います。

そろそろ新しいプロジェクトに向けて動き出したいと思います。

 

| | コメント (0)

« 2021年12月 | トップページ | 2022年2月 »