« 2016年10月 | トップページ | 2016年12月 »

2016.11.25

税務調査が来た!

特電は創業13年目になりますが、初めて税務調査というものが来ました。

1か月くらい前に顧問の税理士の先生を通じて連絡がありました。最初は11月16日~17日の2日間で行いたいということだったのですが、「展示会に出展しているから」という理由で延ばしてもらい、24日・25日の2日間になりました。

事情があれば、日時の変更は可能ということは本当のようです。

さて、24日の税務調査に備えて準備したことは、

  • 契約書等を、分類・整理して日付順にファイルに整理整頓。もちろん収入印紙チェックは忘れずに。
  • 定期株主総会議事録や取締役会議事録、定款なども時系列に並べてファイルに納め、いつでも出せるようにしておく。
  • 納品書・請求書・見積書、その他、佐川急便の伝票など、年度ごとに一式そろえておく
  • 会社の概況(主要製品の説明、取引先の相関図、売上・利益の推移グラフ)を用意

まぁ、当たり前のことを当たり前にやっておいただけです。

特電は毎年の決算を正しくちゃんと行っていたので、そんなに恐れることはないのですが、やはり緊張するものです。税理士の先生から言われていたことは「聴かれたことだけを喋り、余計なことは言わないように」とのことでした。

9:45ごろに税理士の先生が到着し、10:00ぴったりに税務署の事務官が来ます。

本当にぴったりの時間に来ます。かなり若い方で、名刺を拝見すると、「事務官」と書かれていました。

趣旨は、定期的な通常の調査で、三年分の帳簿のチェックをしたいというものでした。

まずはあらかじめ印刷しておいた資料を使って会社の概況の説明。

  • 主に外国から電子部品を輸入して、プリント基板に実装して、いろいろなところに納品している
  • その回路や基板を設計している
  • 創業13年目で、習志野から秋葉原、神田、本郷へと移転してきた
  • この会社はこの部屋がすべて。ほかに倉庫などはない

などなどです。

雑談の中にも税金的な話がふんだんに入っていて、なんとか糸口を見つけようとしていますが、ちゃんと会計をやっているので、何もでてきません。

午後からは、帳簿のチェックです。基本的に税務官の人がすべての帳簿を見て、不審な点を探します。何か聞かれた際には税理士の先生が私の代わりに答えてくれるので、特にずっと一緒にいなくても構わないのですが、聞かれたときにはすぐに答えられるようにしておきます。

質問されたことは

  • ○○という見積書があるが、これに対応する売上が帳簿にない

ということが多かったです。それに対しては、Accessで作った販売管理システムを見せながら、「これは見積もりだけで注文が来ていません。当て馬にされただけです。代わりに同じものが別の商社から注文が来ています」

といいました。

すべての書類を保存していたので、失注した見積書も含めて全部保存していたので疑われたようです。これからは、見積書に「失注」ハンコでも押したほうがいいかなと思いました。

  • ○○の請求書の原本が保存されていない

というものですが、「お客様に送ったから、残っていない」と答えました。

すぐにAccessのシステムで再印刷して、それでOKでした。

これからは、請求書を郵送した場合には「控え」ハンコを押した請求書を残しておいたほうがよかったかもしれません。

あと、大量にあるDigikeyのInvoiceも全部チェックしていきました。初めて見る会社の帳簿を、よく短時間でここまで把握できるものです。さすがプロですね。

部品の在庫の管理も気にしていたようで、これはPHPとMySQLで動く特電独自の部品在庫管理システムを見せて、

「単価1円にも満たない細かい電子部品の1個1個まで、棚卸の時に全部数えて、購入時の原価で計算している」ということを伝えたらぐうの音も出ないようでした。

特に気にしていた点は、期をまたぐような仕入れをしていたりした場所で、例えば4月20日ごろに入荷したものが、その期の棚卸に入っているかですが、これは

「期をまたぐような場合は、それが漏れたりしないように大変注意しながら棚卸をしている(キッパリ)」と言って、OKでした。

税務官の人からは、「在庫システムに、誰がどんな変更を加えたかの履歴を残せるようにしておいてください」という宿題を出されましたが、それだけでOKでした。

大学・官公庁向けの販売で契約書がないのを指摘されたりもしましたが、ないものはないので、「仕様書・発注書だけでやっている」と答えて、それでOKでした。

経費の使い方についても、全く問題はありませんでした。

sun

2日間で3年分を調査する予定だったのですが、1年半くらいを見て、それで終わりになりました。何も見つけられずに帰っていきました。

税理士の先生曰く、かなり優秀なほうで、特に指摘されたり修正されたりする点はないだろうとのことでした。

緊張して待っていた税務調査ですが、無事に終わったようです。

今後、改善するべき点としては、

  • 請求書の控えは「控え」ハンコを押してとっておく
  • 見積書で失注したものは「失注」ハンコを押してとっておく
  • データベースは、作業者の履歴が残るようにする

という感じです。

| | コメント (0)

2016.11.22

MPPC&プラシン箱をリモートアクセスできるようにしました

プラスチックシンチレータとMPPCを使った「MPPCアレイ箱」を、インターネット経由で見られるようにしました。

見られるといっても、カメラで撮っているというわけではなく、Cosmo-Zをつないで生の波形を見られるようにした、という意味です。

こんな装置です。↓

Mppc_1Mppc_2

赤い箱の中に、プラシンとMPPCが16個入っていて、それをCosmo-ZでAD変換してインターネット配信しています。(金色の筒は、NaIシンチレータですが、これはエネルギーを測るためのものですが、まだ動かしていません。)

MPPCの波形を見てみたいという方は、下記の「リアルタイムモニタ」のページから入ってください。

http://www.tokudenkairo.co.jp/cosmoz/realtime.html

Webインタフェース経由で波形やスペクトラムを見ることができます。

Mppc_3

この装置は、特電のオフィスでこれから数か月単位で常時稼働させる予定です。今は「見るだけ」ですが、これからは常時モニタリングを目指して整備を続けていきますので、お楽しみに。

| | コメント (0)

2016.11.18

ET2016出展3日目

特殊電子回路はET2016に出展しました。

徹夜で仕上げたMPPCのヒット位置表示プログラムも無事に動きました。

Et2016_day3

こういう、プラスチックシンチレータとMPPCを4×4の配列にならべた「MPPCボックス」というものを作り、16chのアナログ信号をCosmo-Zに入れて、

Mppc_array

どこのMPPCが発光したかをリアルタイムに表示するというものです。

Mppc_realtime

Mppc_et2016_2

このデモがわかりやすかったらしく、じーっとみてくれる人がいました。

また、ボードをアクリルケースに入れて展示しているものも評判良く、「せっかくET展に来たのでボードが見れてよかった。サービスばかりでつまらなかった」という声も聴かれました。

今後、今回の新製品のCosmo-Kや、HyperFADCをブラッシュアップして、一刻も早い製品化を目指していきたいと思います。

| | コメント (0)

2016.11.17

ET2016出展 2日目

ET2016出展2日目です。

昨日と比べると、ポップが増えて、説明をしなくても展示物がわかるようになりました。

Et2016_2

これは展示物の、基板パネル。

インターンの学生さんがKintex-7でUSB3.0とDDR3のテスト回路を動くようにしてくれたので、デモを行っています。

Et2016_2_2

今回はMITOUJTAGは展示していないのに、MITOUJTAGのことで・・と尋ねてきてくださるかたも何名かいらっしゃいました。

そんなときは、このKintex-7ボードを使って説明しています。

ETフェスタでは、電氣ブランを提供しました。

Denki

しかし、10分くらいでブースを閉めて、机の上を片付けて、電気ブランと貼り紙だけおいて他所へあいさつ回りにいっていたら、電気ブランがなくなっていました。なくなったのが電氣ブランだけなのが不幸中の幸いでした。

| | コメント (0)

2016.11.16

ET出展1日目

ET2016に出展しています。

今回の展示物は、Cosmo-Z 16ch、MPPCアレイ、Cosmo-Kなどです。

Et2016_1_2

シンチレータアレイも無事に動きました

Et2016_1_1

同軸ケーブルがすごい量です。

ブースにいらっしゃったのは、推定70名。

うち、30人くらいのお客様とお話しをしたと思います。

| | コメント (0)

2016.11.15

ET2016の前日

ET2016の会場のセットアップができました。「計測製品カタログ」という新しいパンフレットも届きました。

今朝デザインしたパネルを貼り付けて、ブースが完成です。

Win_20161115_161307_2

あとは、肝心の出し物である、「RasPi内蔵Cosmo-Z」と「MPPCアレイとCosmo-Z 16チャネル版」が動けばよいのですが・・・。

いま、特電のオフィスではインターンの学生さんたちが、Cosmo-KのDDR3メモリをテストしたり、RasPiをルータ化しようと頑張ってくれているはずです。

私も徹夜で頑張ります。

| | コメント (0)

2016.11.14

展示会に向けて着々と準備が進んでいます

今までの特電の展示会では、机の上に基板を平置きしていたので、一言でいえば汚かった。どれが製品で、どれがデモ用の他社機器なのか分からない状況でした。

そこで、今年は展示会場で基板を並べるて掲示する「あれ」を作ることにしました。

Photo

これまでとは雲泥の差です。

A2サイズのアクリル板とポリカーボネートの板を買ってきて、穴をあけて基板を取り付けます。

これなら製品が一発でわかるし、きれいで見やすいですね。

| | コメント (2)

2016.11.12

ET2016に向けて、着々と準備

真夜中に会社に来て、ET2016の準備を進めています。

まずは、Cosmo-Zを内蔵したRaspBerry Piの組み立て。

アクリル屋さんに加工をお願いしていたパネルに組み込みます。

Csz_raspi_top

こんな感じ。RasPiとCosmo-ZがPoEで動きます。

Csz_raspi_bot

FPGA化された波形モニタとMCAが電池でも動くので、フィールドで放射線測定をする場合や、ビームラインに降りて機器のテストを行ったりするときに便利ではないかと思います。

sun

それから、NaIのシンチレータを使って、Cosmo-Zで初めて計測してみました。

下の写真の金色の筒にNaIが入っています。

NaiNai_keisoku

おおっ、ちゃんと出ている!実はNaIの波形をCosmo-Zで見たのは初めてです。今までは電源の問題でノイズが多くて測れなかったのですが、アルバイト君がノイズの少ない電源箱を作ってくれたおかげで計測できるようになりました。

カリウムの試薬を置いてみると、

Csz_nai_caNai_ca


おおぅ。ピークがにゅっと出て有意な差がでました。

sun

しかし、MPPC箱については失敗が続いています。箱の中が立体的にかみ合うので難しいのですが、MPPCプローブ基板(下の写真の黒い基板)のダイオードのAとKが逆になっていました。

Mppcbox

これはもう、この基板を使わずにやるしかないですね。

ETまであと4日あるので、まだ何とかなる!

朝が来たので帰ります。

| | コメント (0)

2016.11.10

Kintex-7のPCI Expressリンク幅と速度

Kintex-7のPCI Expressリンク幅と速度がどうなっているのかを調べました。

XILINXのユーザガイド「7 Series FPGAs Integrated Block for PCI Express v3.0」によれば、物理層インターフェイスの出力信号にそれらを示す信号が出ているようで

  • pl_sel_lnk_rateが現在のリンク速度を示す。'0'なら2.5G、'1'なら5G
  • pl_sel_lnk_width[1:0]が現在のリンク幅を示す。"00"ならx1、"01"ならx2、"10"ならx4、"11"ならx8
  • pl_initial_link_width[2:0]は、初期のリンク幅を示す。つまり、最大のリンク幅になっている

あと、通信の相手がGen2に対応しているかを示すpl_link_gen2_capや、リンクがアップコンフィギュレーションに対応しているかを示すpl_link_upcfg_capなどの信号があります。

Cosmo-Kで、これらの信号を見てみると、pl_sel_lnk_rateは'1'、pl_sel_lnk_width[1:0]は"10"なので、Gen2のx4でリンクアップしていることがわかります。

では、この幅をいろいろ変えてみましょう。

まず、(需要があるのかどうかはわかりませんが)リンク速度のスピードダウンを行ってみます。pl_directed_link_speedを'0'にして、pl_directed_link_changeを"10"あるいは"11"にすると、スピードが下がります。

Spddwn

pl_sel_lnk_rateが'0'に変わるのが見えました。

そうしたら、次に速度を戻します。pl_directed_link_speedを'1'にして、pl_directed_link_changeを"10"あるいは"11"にします。

377_3

このとおり、リンク速度が戻りました。簡単ですね。

sun

リンク幅を減らすことも簡単です。リンク幅を減らすには、pl_sel_lnk_width[1:0] に"01"や"00"を指定して、pl_directed_link_changeを"01"あるいは"11"にします。

お気づきのとおり、pl_directed_link_change(0)はリンク幅の変更、pl_directed_link_change(1)はスピードの変更を指示する信号です。

X4x1

幅・速度変更の最後には、pl_directed_change_doneが'1'になって完了を示してくれるので、そうしたらpl_directed_link_changeを"00"を戻します。pl_directed_link_changeが != "00"でない状態で放置すると、何度も何度もリンク変更を繰り返してしまいます。

リンク幅を減らすのは4μ秒程度の短い時間で完了します。しかし、リンク幅を増やすのは、うまくいかない場合があるようです。

また、当然ですがx4のリンク幅で作られたボードをx8にしようとしてもx8にはなりません。

わかったことは、

  • Cosmo-Kは、デフォルトでは、設計したとおり、Gen2のx4でリンクアップした
  • x1にもx2にも変更できるが、x8にはならない
  • リンク速度と幅を変更するには、pl_directed_link_speedとpl_directed_link_widthに新しい値を設定して、pl_directed_link_changeに"11"を与える。pl_directed_change_doneが来たら"00"に戻すこと。

ということです。

| | コメント (0)

2016.11.09

Kintex-7のPCI Express EndPointを使う方法

Kintex-7搭載のPCI Expressボード「Cosmo-K」で、PCI Expressがあっさりと無事に認識されました。

やりかたは意外と簡単で、ISEのCoreGenでPCI Expressのコアを作って、その中にあるExample Designをビルドすればよいだけです。

K7pcie_1

sun

では、もう少し詳しく説明します。

まずISEを用意してCoreGenで新規にコアを作成します。Vivadoだとややこしくなるので、私はまずはISEで試します。

Standard Bus Interfacesの中にある7 Series Integrated Block for PCI Expressを選びます。

K7pcie_2

最初の画面では、レーンの幅や速度などを選びます。

K7pcie_3

最初のDevice / Port Typeというところは、PCI Express Endpoint Device(普通のターゲットボード)にするか、Legacy(I/O空間が使えたり)にするか、RootComplexにするかなどを選びます。(Rootになれるって、すごいですね。)

Gen2に対応させるには5.0GT/sを選びます。Interface Widthというのはユーザポートのデータバスの幅です。Cosmo-KはGen2 x4なので、64bit 250MHzか、128bit 125MHzになります。

sun

次はBAR空間の設定です。32bitメモリ空間ならば2GBytesまで、64bitメモリ空間ならば8ExaBytes要求できるようです。

これはCPUの物理アドレス空間のどの範囲をPCI Expressに割り当てるかということなのですが、好きなだけ確保してください。実際にそのサイズのメモリを用意しなくても良いわけです。

K7pcie_4

その次は、ベンダIDなどを指定します。1BC8というのは特殊電子回路のベンダIDです。

K7pcie_5

1BC8を10進数にすると7112なので、もう少し早く取れば7110(ないとう)になったので、すごく惜しかったと思います。

ベースクラス以下11 00 00というのは、汎用のData aquisition and signal processing controllersのDPIOモジュールを意味するので、FPGA拡張ボードなどの用途にぴったりです。

その次から先の数ページ分の画面では、特に設定する必要はありませんし、実際には変更してもメリットはないでしょう。拡張コンフィギュレーション空間とか、エラーレポートとか、パワーマネージメントとか使う必要ないでしょうね。

K7pcie_6

最後から2ページ目のここは、ちょっと気になります。デフォルトではトランザクション層のバッファに使われるBRAMにパイプラインレジスタを入れない設定(none)になっています。以前、数値計算回路でBRAMを250MHzで動作させた際に、タイミングエラーが生じたことがあるので、もしタイミングエラーが生じたときにはバッファを有効にしたほうがいいかもしれません。

最後のページも特に変更する必要はありません。レーン反転はUCFファイルの設定でも何とでもできてしまうので、ダイナミックに変える必要も感じません。

リファレンスクロックは100MHz、125MHz、250MHzが選べますが、マザーボードから送られてくるクロックは100MHzなので変更する必要もないでしょう。

K7pcie_8

まとめると、最低限設定する必要があるのはレーン速度、幅、ベンダID、デバイスID、BAR空間くらいです。簡単ですね。

sun

Generateすると、ipdore_dirにpcie_7x_v1_9というディレクトリができて、\ipcore_dir\pcie_7x_v1_9\example_designにxilinx_pcie_2_1_ep_7x.vhdというファイルができます。基本的にはこれをトップデザインとしてビルドすればよいのですが、このファイルはGenerateするたびに上書きされるので、そのまま使うのではなく、内容をコピーして自分で作ったVHDLファイルに貼り付けて使います。

UCFファイルもCoreGenのipcore_dirの中に見つかるはずです。

プロジェクトの構成は下の図のようになるはずです。

K7pcie_9

inst_pcieというのが、xilinx_pcie_2_1_ep_7x.vhdをコピーして作ったモジュールです。中にはpcie_7x_v1_9というコア(PCI Expressの本体)と、app(BARメモリ空間に実装されたメモリマップドI/O)などがあります。

そのほかに設定する必要があるのはsys_clk_p/nのピン配置とsys_rst_nのピン配置です。sys_rst_nは、PCI ExpressのPERSTBです。sys_clk_p/nはPCI ExpressのREFCLKをGTXに入れているピンです。UCFで設定すればよいでしょう。

NET "sys_rst_n" LOC = H13 | IOSTANDARD = "LVCMOS18" | PULLUP;
NET "wake_op" LOC = G14 | IOSTANDARD = "LVCMOS18";
NET "sys_clk_p" LOC = "H6";
NET "sys_clk_n" LOC = "H5";

回路設計上の問題として、PERSTBやREFCLKをそのままFPGAにつなぐのは避けたいところです。何らかのバッファICを入れたほうがいいでしょう。

sun

ただし、CoreGenのサンプルをそのままビルドしても動きません。

なぜならば、PIPE_MMCM_RST_Nという信号があるのですが、この信号は'0'のままでリセットがかかりっぱなしになっているからです。PIPE_MMCM_RST_Nという信号は

K7pcie_10


と、signal文の初期値を使って'1'に指定されているのですが、XSTはこれを無視します。example designではPIPE_MMCM_RST_Nに値を代入している部分はないので、source less signalとして常に0になってしまうのです。

だから、自分で

PIPE_MMCM_RST_N <= '1';

と書いてやらねばなりません。これに気が付かないと焦ります。

あと、UCFファイルはBRAMの位置をLOCで固定しているところと、GTXE2_CHANNEL_X0Y4などをLOCで固定している箇所はコメントアウトして、

NET "pci_exp_txp(0)"  LOC = "H2";
NET "pci_exp_txn(0)"  LOC = "H1";
NET "pci_exp_rxp(0)"  LOC = "J4";
NET "pci_exp_rxn(0)"  LOC = "J3";

のようにピン番号で配置を指定したほうがわかりやすいでしょう。

これでPCI Expressが認識されるようになりました。

K7pcie_11K7pcie_12

| | コメント (0)

2016.11.08

Kintex-7 PCI Express基板の実装が上がってきた

待ちに待ったKintex-7 PCI Expressボードの実装が上がってきました。

Cosmok3

まずは、40GのQSFP搭載のCosmo-K+

Cosmok

コンパクトなのに、すごいパワーを感じます。

次は、10GSFPを3機搭載したCosmo-K-

Cosmok_2

セルフでIBERTテストができそうですね。

最後にECLの汎用I/OがついたCosmo-K0。これは特注品です。

Cosmok0

Kintex-7が凛々しい。Cosmok_3


早速、注意深く電源を入れてみました。

Cosmok_power

MITOUJTAGをつかって、バウンダリスキャンでピンの状態が見えたので、FPGAは生きていることがわかりました。Cosmokbscan

JTAGをつかわなければ、テストデザインを作ったりしてFPGAの生死判別に1日くらいかかりますが、MITOUJTAGなら一瞬でできます。

| | コメント (0)

2016.11.04

特電SATAコアが7シリーズで初めてリンクアップ

いままでSpartan-6で動いていたSATAコアをKintex-7に移植したら、リンクアップしなくて1年以上悩んでいたのですが、インターンで来てくれている学生さんが、ようやく、やってくれました。

特電SATAコアがZYNQなど7シリーズのFPGAで初めてリンクアップしました。

これまでダメだった原因は、おそらくSSD/HDDが出してくる信号がスペクトラム拡散によって周波数が変わってくるので、7シリーズの受信回路が追従できなかったためだと思われます。

リセットシーケンスを正しく発行することと、RXCDRHOLDを有効にするタイミングを適切な場所にしたら、正常にリンクアップするようになりました。

Crucial_gen1_xrdy

近いうちにCosmo-ZにSSDやHDDをつないで、長時間のデータロガーとして使えるようになるでしょう。

| | コメント (0)

2016.11.03

マリーアントワネット展

電車の広告で見て、マリーアントワネット展に行ってみた。

六本木ヒルズである。

入口で30分待ちと案内が出ていたが、実際には入場するまでに、1時間半くらいかかったと思う。この美術館は客が増えた場合を考慮した作りになっていない。エレベータの輸送量が全く足りていないのだ。

ようやく美術館に入ると、中は大混雑で絵画をゆっくり見ている余裕など全くない。

この絵画はレプリカ?本物?手で触れるような距離に展示してある絵画が本物ってことはないよね!?

ところどころガラスのケースに入って展示されているものや、警備員が立っているものが本物なんだろうか?

最後の時計のところが非常に警備が厳重だったけど、この時計がすごいらしい。11月2日から2日間の展示ということで、見られたのは幸運だったといえよう。

平日に行けばゆっくりと楽しめたかもしれない。

sun

美術館を出ると廊下が展望室のようになっているが、六本木ヒルズは風水的に悪いと思った。周囲が全部囲まれていて、明堂といわれる空間がない。ものすごい圧迫感というか窒息感がある。

なんだかいろいろわかった気がした。

| | コメント (0)

2016.11.02

MPPCアンプの出図

Multi-Pixel-Photon-Counter、通称MPPCを16個並べるための基板を出図した。

Mppc_amp2

MPPCというのは、光の粒子、光子の数を数えることができる光センサ。

この基板はそのためのプリアンプ基板である。

MPPCの特性は温度やバイアス電圧に依存する。

高速アンプをつかっているため、かなり発熱する。アンプ基板とプローブ基板を一緒にすると、使用中に特性が変わってくるなどということがおきてしまう。

そこで、アンプ基板とプローブ基板は分離して、マックエイトのこの端子で接続することにした。

  • HRP-20P-G

http://www.mac8sdk.co.jp/mac8/pdf/HRP.pdf

http://www.mac8sdk.co.jp/mac8/parts/HHH/hr.html

  • PD-70

http://www.mac8sdk.co.jp/mac8/pdf/PD.pdf

http://www.mac8sdk.co.jp/mac8/parts/PPP/pd.html

プローブ基板には半固定抵抗が乗っていて1つ1つのMPPCの電圧を微調整できるようになっている。50~60Vの精密電源を、1μA程度の消費電流で作るのは難しい。

それから、遮光性のある箱の中からたくさんの信号を取り出すため、今回からフレキシブルケーブルを使ってみることにした。

FFCケーブルには非常に多くの種類があって、何を使えばよいのか、嵌合するコネクタはどれなのか、激しく悩む。

アルバイト君に頼んでいくつか選んでもらった。Molexなら安心だろう。

| | コメント (0)

2016.11.01

IBERTテストで10Gbps

Cosmo-ZにZYNQのFFG676パッケージを乗せたものでIBERTテストを行いました。

FFG676というのは性能がいいやつで、FBG676というのは普通のやつです。

XC7Z030-1FFG676CのGTXの最高速度は8Gbpsまでのはずですが、実際には10Gbpsも通ることが確かめられました。多少のオーバークロックは効くようですね。

99g_cable

12Gでもアイは開いています。多少どころではないオーバクロックの効き方です。

120g_cable

IBERTテストはエラー率が10^-10程度まで測るのであれば一瞬ですが、10^-12くらいまで測ろうとすると30分くらいかかるようです。

| | コメント (0)

« 2016年10月 | トップページ | 2016年12月 »