「Verilog」を含む日記 RSS

はてなキーワード: Verilogとは

2021-03-30

半導体チップ設計ってどうやって勉強するんだ?

デジタル回路だと、FPGAについての本がある。

Verilog、System-Verilogあたりは書籍もある。

LINTはチェックするツールフリーではないが、書籍がある。

検証となると、VerilogやSystem-Verilogあたりでの検証書籍でなんとなくは出来る。

アサーションあたりになると書籍微妙になる。System-Verilogアサーション、PSLでなんとなく書くのは出来るかもしれないが。

e言語になると書籍もない、ネットでも情報がない。


加算器と減算器はまだいい。

乗算器、除算器、Sin、√となると、書籍がない。


CPU簡単なのは作っている人はいるが、浮動小数点回路となると減ってくる。

GPUなんてなると、殆どない。

USBHDMIなど、身近に溢れているものでも、作っている人がいない。

タイミング制約や非同期あたりも情報が少ない。


アナログだとSpiceにはたどり着くが、ディスクリート品の対象が多い。

2020-07-16

ハード作ろうにもVerilog仕様から先に進めない

Verilog言語仕様に関する記事は沢山あって勉強したあと、

何が作れるのか先人の発明を探そうとすると、あまり出てこない。

Lチカ以降、道がなくなるのと同じ。

2020-06-27

技術者でも、スパコン富嶽について政治の話しかしてない

世間一般はもうおいておくとして。

技術者でも富嶽については技術的な話がされていない。

中のCPUArmアーキテクチャという点は言及されて終わりのような。

CPU自体日本だと設計できる人が少ないからなのか。


自分も"Computer Principles and Design in Verilog HDL"といくつかの書籍くらいでしか勉強していないから、そこまで詳しいわけではないが。


ソフトウエアについても、具体的な名前も出てこない。

使っている人が少ないからか。

2020-06-25

anond:20200625063230

というか、

ASICやLSIを作ったことある人なら、当たり前すぎることなんだけど、

語弊があるどころかニュアンスが逆なんだよね。

マイクロアーキテクチャ共通化するっていうことは、

開発者にとって楽になるどころか難しい方向に行くんだよね。

フロントエンドのみArm命令に置き換えた形」という文言は、

「中身は前のまんまw」「命令セット入れ替えただけなんすわw」「命令デコーダarm化したSparc64です。」という意味ではなくむしろ逆で、マイクロアーキテクチャ共通になるように、DDRHBM差分を見えなくしたりレイテンシを調整したりetc...して、ほとんど全部Verilogを書き直したってことなんだよね。

で、なぜそこまでしてマイクロアーキテクチャ共通化するかっていうと

チップ検証で、過去資産活用するためなんだよね。

LSIチップ検証って組み合わせパターン天文学的数字すぎて分岐網羅とか全然できないんだよね。

ソフトウェア的な分岐網羅に換算したら0.1%となんじゃないかな。

そこでマイクロアーキテクチャ共通化してると、過去チップLSIテストケースを流用できるわけなんだな。

でも、カバレッジ全然ないのに、もしLSIバグがあると作り直しにウン億円ぐらいお金かかるからね。

これは国プロからそこらへんどうしてるんだろうね。

2020-03-28

製造業にいると、コンピュータが遠くなっていく

CPUVHDL,Verilog,System-Verilogで書いたりした時もあった。

USB,HDMI,電池の充電制御,WiFi,自動車など色々やったが、コンピュータが遠くなっていく感じがある。


FPGACPUを書いてOSを起動させたとして、自分普段仕事環境が良くなるわけではない。

ソフトウェアでは次々と開発環境が良くなっていくし、自分で使いやすいようにカスタマイズもできる。

でもハードはそうではない。MS Officeは動くがメモリが4GBでカクカク。

作ったハード自分達が使うわけじゃない。例えば100Gイーサ開発してもその恩恵は得られず1Gbpsが関の山だったりする。


C言語アセンブラまではハードがどう動いているかわかるが、

Python,Go,R,C++,Rubyくらいになると書けるがどう動いてるかわからなくなってブラックボックス化する。

社会的には正しいのだが、自分が関わったハード自分が書いたC/C++コードを上位から呼び出すのはわかるが、

ハードが変わったらブラックボックスになる。ロジアナオシロで見てわかるレベルであればいいが。


またソフト業界とのギャップも感じる。

PandasのTime seriesが時間を扱えるのかと思っていると、ピコ秒が扱えない。

これは1例に過ぎないが、Amazon本屋新刊が出ると買って勉強し、ライブラリ公式ドキュメントも読んでいくが、仕事に直結しない。

クラウド使ってディープラーニングのやり方は沢山情報はあるが、CPU内蔵GPUメモリ4GB+FPGAでやる情報なんてない。

しか電流量絞ってないと物理的に壊れる恐れもある。辛い。


うそう、コロナオーバーシュート話題になったが、

オーバーシュート場所を検出したり、統計処理するようなソフトもパッと出てこないので書いた。

このあたりもソフト業界ギャップを感じてしまう。オシロ機能としてあるわりに、手元のPCだと自作する羽目になる。

2019-12-17

報告資料ってプログラミングで楽にならないものなの

技術資料を作って報告するのだけど、ポンチ絵だのグラフだのがプログラミングで楽にならない。

プログラマーの人ってそれほど報告しないものなのだろうか?


専門はVerilog系なのでそういった資料作りには役に立たないし、

Pythonで色々探したが見た目の調整に時間がかかりすぎるので辛い。

(例えばPythonエクセル自動化できるというが、グラフの調整が結局手作業になる…。強調したいところ以外を灰色に変更したり。)

2013-11-10

http://anond.hatelabo.jp/20131109185658

組み込み系の仕事をしている二年目です。

毎日仕事ができなくて凹んでます元増田の2年目が羨ましいです。

研究室では解析アプリケーションを作るのにC,C++,Fortranをいじってました

また趣味サーバの立ち上げやWeb系のJavascriptPHP,Pythonなどもいじっていました。

なんである程度どっちもわかります

で、そんな自分組み込み系の仕事に入ったわけなのですが、

まったく違う。組み込みWebアプリケーション文化が違ったわけです。

ここからはあくまで私の体験ですが…

まず、組み込み系はハード接続図)を読めないと話になりませんでした。

CPUFLASHSRAMFPGACPLDアナログ回路、バッファ、それらをつなぐバス、電源、接点、コネクタスロット、A/D、D/Aなどなど、

これらがどうつながってるか意識しなくてはいけません。SoCとか行っても接続図読めないと意味ありません。

この段階でプリント板の単体検証もしてもらいます

広い話、プリント設計組み込み系の仕事なんですよね。

次に、FPGACPLD設計があります言語VerilogVHDLです。XilinxAltera、Actel等のデバイスに書き込みます

PLDって言うのは言語で書けるハードです。似ているようでCPUと違うので設計にはスキル必要です。

この段階でシミュレーション(modelsim等)をしてもらいます

ここも立派な組み込み系の仕事です。

次にCPUです。言語はC,アセンブラC++です。でもほとんどがCです。デバイスルネサスSHとかです。自分はここで見習いをしてます

CPUに直接入ってくる信号(接点・バス等)もありますが、前述のFPGACPLDから入ってくる信号のほうが多いです。

で、アプリケーションWeb系と何が違うかといえば、ものすごい短期間にいろんなことが起こります

リアルタイム処理っていうのでしょうか。割り込みとか聞いたことありませんか。

要はOSがないので自分でなんでも考えなきゃいけないわけです。

CPU検証はMISRA-Cや専用のカバレッジテストツールで行います

一般的組み込み系の仕事と言われるとここを指すと思います


実際にはユーザーインタフェース設計組み込みに入ります

接点の調整とかLCDパネルとかメンテナンスのツールだとかがないと装置に指令を出せません。

これらにもCPUが入っているわけなので別にコードを書く必要があります組み込み系の仕事です。

さらPLCってのもあります

これは言語でかけるリレー回路です。リレーってのはスイッチです。

スイッチ操作することで接続されている機械操作(電源の入り切りとか)します。

これもCPU,PLD等とは全く違う方式(ラダー)で書きます。十分組み込み仕事です。

最後に組み合わせ評価・試験です。

ユニット試験では通っても、組み合わせ試験で動かないというのは100%あると思います

試験仕事じゃないと思われるでしょうが自分はここも立派な組み込み系の仕事だと思ってます

この段階で確認がとれた後、装置に渡せるようになります

などなど一言組み込み系の仕事といってもいろいろあるわけです。

上の中の2つ3つを仕事に使えるレベルまで持って行くには10年、20年はかかると言われました。

ここで表題の件なのですが、元増田の人は経験8年なので、例えばFPGAを8年やってきてCを書けと言われても大変だと思います

特にその後にWeb系の仕事(これも一言で表すにはいろいろジャンルがあると思いますが)をされてきたとのことなので

いろいろとあったのだと思います。逆にずーとやっていた分野のことを任せるといいかもしれません。

まずどんなことをやってきたのか聞いてみたほうがいいと思います

2010-07-28

http://anond.hatelabo.jp/20100727224744

HDL(ハードウェア記述言語)をボカロに例えたかったけれど、

Verilogしか知らない俺には無理だったぜ、的な。

2009-02-03

月収400万くらいのプログラマです。

フリープログラマです。月収で200~1500万くらい。年収で3000万~1億くらい。都内のボロいワンルームの1Fに一人で住んでテレビ冷蔵庫も食器もない部屋で毎晩コードを書いているだけです。昼は寝ています。ごはんは隣のコンビニですましています。何かを選ぶ気力も無いです。使っているパソコンThinkPad X30だけです。これで十分です。有料のソフト秀丸があれば何もいりません。

欲しいものはなにもないです。行きたいところもないです。会いたい人もいないです。友達も仕事以外では誰もいないです。学生時代の大半はいじめられっこだったので、基本的に人は好きじゃないです。2ちゃんスレを立ててもだいたい伸びないです。オンラインゲームも人と絡むのがすごい苦手ですぐやめました。惨事彼女なんているわけないです。セックスは有料でしたことがありますけど、zip同人誌を見てオナニーしてるほうが気持ちよくて、面倒くさくないと思ったのが感想です。恋をしたこともありますが、多くは色恋営業で、街で声をかけられて、数十万の絵を買わされたり、数千万の紙切れを買わされたりして、契約成立のあとは、一度も会ってくれない女の人に3人ほど恋をしました。一生虹でいいとおもいました。

コードを書くのだけは異常に速いと言われます。Webサイト構築でも、FlashでもAJAXでも、DSP開発でも、PGA/CPLD verilogでも、WindowsMacでも、JavaでもAirでも、BREWiアプリとかのケータイアプリでも、iPhoneAndroidアプリでも、PS2PSPのコンソール機のゲーム開発でも、組み込みの独自OSの開発でも、ドライバ開発でも、カスタムCPUコンパイラでも、なんでもこなしてきました。キモい38歳です。コードを書くだけがとりえです。それだけの人間なんだと毎日思っています。別に幸せでも不幸でもないです。ただ、やりたいこともないです。正直、明日にでも死にたいです。もう死んでいるかもしれません。みなさん、ありがとう

2008-10-10

女子クラスで理解するプログラミング言語

こんなところかな。異論は認める。つか、異論をくれ。

異論ありがとう


あ、元ネタ忘れてた:http://anond.hatelabo.jp/20080729035820

2007-12-02

ここで勝手言語論争ごっこ

一番使い勝手の良いプログラミング言語Perlどぅわ!

C/C++/C#なんて気軽に文字列処理できないし、

Windowsでしか使えないVisualほにゃらら

メモリの確保、解放なんてしたくない

だいたい、セグメンテーションフォルトを起こすような言語は嫌い

DirectXOpenGLとお友達になりたくない

Haskelわけわかんないし

Java重苦しいし、いちいちclass Hogehoge { public static void main() { ... } }書くのがめんどくさいし、API多すぎ

オブジェクト指向したくなるような複雑なプログラムは最初から考えない(作れない)

GUI作りたくなるような言語はめんどくさい

言語が提供するGUIのツールはOSとは別に独自のレイヤー世界感を持っててとっつきにくい

マルチスレッド、排他処理を扱うようなプログラム脳味噌がついて行かないので書かない

CGIにしか使えないようなPHP

Ruby、、、そもそもLL言語で大規模でオブジェクト指向プログラム書きたくない。小規模ならオブジェクト指向要らない。

俺のマシンで実行できないAda/Basic/Fortran/Pascal その他いろいろ

VHDLVerilogFPGAやゲートアレイなんて持ってない、持ちたくない(苦手だもん)

データベースなんかいじってたまる

HTMLXML日本語タグが入り乱れるので、そのつど日本語入力の切替えが死ぬほど嫌になった。

だから、HTMLXMLは全部手入力なんて真似は絶対してやらねえ。

Flex(Action Script)はコンパイラJavaで実装されてて重すぎる。(シェルを使えばまし)

JavaScriptブラウザごとの挙動の違いを吸収しきれる自身が無いので使わない。

1プログラムにつき、(コメント含めて)250行以上書きたくない

複雑なプログラムを最後まで書ける連中が羨ましい。

排他制御にとちって、デスロックしてしまえ。

(本文には触ったこともない言語を思い込みで罵倒しているなど、嘘、おおげさ、紛らわしいが多数混入しています。それが全部わかった貴方プログラミング言語マスターです。)

2007-06-30

俺とプログラミング

http://anond.hatelabo.jp/20070630181251

触発されて、俺もプログラミングとのかかわりを考えてみた。

小学生時、家にはFM-TOWNSがあり、PCには触る機会が多かった。当時、ソフトウェアというものはメーカーが作るものだという思い込みがあったが、フリーソフトというのものの存在を知り、どうやってそれが作られているのか気になる。プログラムがしたいと思うが、開発環境が手に入らず断念。

おかんがPC9801を仕事で借りてきた。マニュアル群の中にROM-BASICの説明書(文法解説付き)がありいじりまくる。しかし、ROM-BASICは保存が出来ないので、毎日プログラムを一から組みなおしていた。作っていたのは、ほぼIFとGOTOのみからなるアドベンチャーゲームもどき。

中学生時、友人家にN88BASICを見つけて借りて帰る。今は無きBASICマガジンを毎月買って、載っているプログラムを打ち込み、それを参考にしてゲームを作っていた。

高校に入り、この頃から家にWindowsマシンがあったので、VisualBasic適当プログラムを組みまくる。いま考えたら恥ずかしいホームページを作って、ソフトを公開する。いくつかのソフトがWindows100%なんかの雑誌に載ったりする。Cとかもちょっとだけ触る。受験とともにプログラミングから離れる。

大学4年目、研究室に配属されてプログラムに久しぶりに触る。いろいろな言語の開発環境が揃っているので、適当に遊んでみる。

今はハードウェア記述言語Verilog-HDLを書いてる。結構面白い。

 
ログイン ユーザー登録
ようこそ ゲスト さん