5ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

ハードドライバをシステマチックに作る方法

1 :デフォルトの名無しさん:02/10/19 21:45
私は仕事でファームウェアのハードドライバを書いています。
アプリケーションだとXPのようなプログラミング手法が考案されていますが、
ハードドライバにそのようなものはないのでしょうか?
このまま職人的にプログラムを組むにも限界がありそうなので・・・

2 :デフォルトの名無しさん:02/10/19 21:46
        コロッケワッショイ!!
     \\  コロッケワッショイ!! //
 +   + \\ コロッケワッショイ!!/+
       _,,、、,,,_,_  _,,、、,,,_,_  _,,、、,,,_,_     +
.   +  ,r';;'::゛':::`::;''tr';;'::゛':::`::;''t,';;'::゛':::`::;''t  +
      'r、;:´∀`:∩'r;´∀`∩r''r、;:´∀`;;r'さくさくほかほか!
 +  (( (つ   ノ (つ  丿 (つ  つ ))  +
       ヽ  ( ノ  ( ヽノ   ) ) )
       (_)し'  し(_)  (_)_)


3 :デフォルトの名無しさん:02/10/19 21:46

           _/⌒ ̄⌒`´ ̄`〜ヽ'ー--、
           _/      ιυっ ̄~つyへつ
         /    フっιつ人´ / /つυ^っへ  っっ
       /   /つつ。o/ / / /  ^つっへυっつ
     /________。   。 / /  /°>つっっっつっっ
    / {   ,-∋☆ノハ☆∈\。 o 。 /o。/ /つっっつっつ
__/  \ ヽヽ ( ^▽^)<新スレおめでとうございまーす♪っつっつ
=/      Y ̄ ̄⌒⌒⌒⌒ ̄ ̄ ~\ つつっ、。|    つ  っつつつ
 ̄     っっヽ  ※※※※※※※  \|          っっつつ
  つつっιつ) \  ※※※※※※※  \  °           o 。
  っつっo °。 \  ※※※※※※※  \ ° °           °。
 っ\\っoっ。  °\__________ノ ° 。°°。       。°。
  つっつ _o°°。 ° ° 。o/⌒\。 o\°°o  。     /У\°
 )へ)つ\///`ー、_ ° °。_/    \°。\。 。°°   /WMW、\
  へ)。°|\\\\`ー、 ,〜´ へっυ   ̄ ̄ ̄\°°  /           \  ___/
 ( ̄o°oヽ、 \\,O、/~   つっへっ   \ へ  \ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
  \__/ ̄ ̄ ̄ ̄    っっつ         へ  \ 



4 :デフォルトの名無しさん:02/10/19 21:47
そういえばドライバスレ久しくなかったね

5 :デフォルトの名無しさん:02/10/19 21:54
コピペの練習をするスレッドはここですか?

6 :デフォルトの名無しさん:02/10/19 23:07
XPプログラミングが提唱する。

単体テスト作成→実装→単体テスト実行

これをハードドライバでするのはちょっと難しいかも。
ハードドライバのAPIを一発で決めるのは至難の技だからなあ・・・
ハードドライバのAPIを修正する度に単体テストの修正をするのはかえって効率が落ちそう。

7 :デフォルトの名無しさん:02/10/19 23:56
>>1
マジレスすればプログラムの種類が違う。

>>6の言ってる事の趣旨は良くわからないけど、
ドライバはプログラムの構成が問題になる事はない。
データフローさえ指摘されれば
バカでもかける。
でも、そのデータフロー(アルゴリズム)は
試行錯誤的に作らなくてはいけない(タイミング処理とか)。
そういう意味でドライバのプログラミングは
アルゴリズムの試行錯誤的構築が本質だと思う。
それにプログラムのサイズも小さいので、
破綻すれば0から作り直せばいい。


8 :デフォルトの名無しさん:02/10/20 00:46
>>7
>ドライバはプログラムの構成が問題になる事はない。
>データフローさえ指摘されれば
>バカでもかける。

馬鹿はお前だろ?
ファームウェアの場合、PCのドライバのように抽象化された世界ではない。
PCのドライバはハードを叩いていないものが多いからな。
ファームウェアのドライバを書いたことがあってそんなことを言っているのならば
簡単なドライバしか書いたことがないだけ。
ドライバはハードという融通の利かないものを抽象化する必要があるので、
プログラムの構成が非常に重要。
そうしないと直ぐに破綻する。

>でも、そのデータフロー(アルゴリズム)は
>試行錯誤的に作らなくてはいけない(タイミング処理とか)。

これも簡単なドライバしか書いたことの無い奴の発言だな。
確かに微調整は必要だが、ハードの仕様書(たいてい英語)を全部理解して
アルゴリズムを考えないと確実に破綻する。

>それにプログラムのサイズも小さいので、
>破綻すれば0から作り直せばいい。

ドライバが小さいというのは一概には言えない。
特にゲーム機のグラフィックドライバは尋常な大きさではない。
移動体通信機の無線ハードドライバもそれほど簡単に書けるものではない。

アプリケーションが大きいのは、リンクするデータやライブラリが大きいから大きく見えるだけで
実際のロジックはたいして大きくはない。
アプリケーションの場合、エンジン部分以外は能力の低い奴でも作れる。

9 :デフォルトの名無しさん:02/10/20 00:48
>>1
ファームウェアの場合、ハードドライバだけでプロジェクトが進められることはないからXPは適用可能。
まあ、ファームウェアの場合、ハードドライバの実装だけ始まってアプリは後から作る場合が多いけど。

10 :デフォルトの名無しさん:02/10/20 04:45
>>7
少なくとも言えることはドライバのソフトウェアは通常のOS上での
プログラミングと違い溺愛のライブラリを組み合わせて実現するものではない。
そしてプログラムサイズが小さいと言うことは決して作業が楽というわけではない。
むしろ厳しい制約の中で要求仕様を実現することの方が困難であろう。



11 :デフォルトの名無しさん:02/10/20 06:04
>>10
同意。
ハードドライバはF1で例えればモナコみたいなもの。
モナコはコース長が短く速度も出ないけど、難易度は最も高い。
モナコの勝利は、他のサーキットの3勝分に値すると言われている。
それと同じで、私はハードドライバの1行はアプリケーションの100行に値すると思う。


12 :デフォルトの名無しさん:02/10/23 11:13
ハードドライバのスレハケーン

13 :デフォルトの名無しさん:02/10/23 11:15
また単発質問スレですか?

14 :デフォルトの名無しさん:02/10/26 01:33
>>1とは関係ないけど、ハードドライバのスレッドなのでちょっと書かせて。

ハードドライバ書ける人って、ソフトハウスの派遣外注だとみたことないよ。
半導体メーカーから派遣された人とかフリーでやっている人だといるけど。
いつも派遣外注でハードドライバ書ける人いないかなーと思って面接してもろくなのいないし・・・
ハードドライバ書ける人って確保しにくい。

15 :デフォルトの名無しさん:02/10/26 02:34
ハードドライバをアクロバティックに作る方法

かと思った…

16 :デフォルトの名無しさん:02/10/26 02:36
俺は

ハードドライバをドラマチックに作る方法

と読んだ。

17 :デフォルトの名無しさん:02/10/26 19:55
>>14
そもそもそういうのを派遣で賄おうって根性が既になあ・・・日本はもうダメポ

18 :デフォルトの名無しさん:02/10/26 21:23
>>17
オープン系が派遣に頼る理由は誰にでも出来るからである。

19 :デフォルトの名無しさん:02/10/26 21:47
ホントは誰にでも出来るなら苦労はしないよ。 
人によって能力や適性はプログラミングに関しては10倍どころか最大千倍くらいあるだろなあ

20 :14:02/10/26 23:37
>>17
やっぱり甘い?
ソフトハウスが「うちにもハードドライバ書ける人材がいますよ」と言ってくると期待しちゃうけどね。
でも実際会ってみると、お手伝い程度にしかドライバを書いていなかったり、ハードに近いけど
直接ハードを叩いていないソフトを書いているだけだったり。
書いたことがあってもただのコーダーだったり。。。
英語のハード仕様書を自分で理解して、自分で構築できる人はソフトハウスではいないのかな?
ハードドライバ作成者っていつも人手不足なんだよね。
自社で育てればいいのかもしれんが、会社がそういう方針ではないし。


21 :デフォルトの名無しさん:02/10/26 23:43
>>18
ファームウェア技術者の私にはオープン系は分からないけど、どんな仕事?

22 :デフォルトの名無しさん:02/10/26 23:45
>>20
そりゃ甘いだろ。
英語の仕様書読んで、ハードも理解して、ハードの問題点まで指摘してくれて、
その上著作権全部おいてってくれて、なおかつ派遣で使い捨てなんて 誰がやる?

自分ならやるの?

23 :デフォルトの名無しさん:02/10/26 23:52
>>17
ソフトハウスじゃハードたたくプログラムは無理でしょ。
規模は小さくても自社でハード設計もやっているところじゃないと。
ハードドライバの仕様は基本的に回路解る人じゃないと理解できないから。
ただまれに大手からスピンアウトしてハードドライバも出来る
人がいるソフトハウスもあるけど。




24 :デフォルトの名無しさん:02/10/27 00:03
やらないわなあ、回路読めて、ハードも出来て、なおかつ職にあぶれたら
派遣で人生の大事な時間潰すより、ベンチャーでも個人でIPビジネスでも
やった方がマシ・・・・って普通思うわなあ


25 :デフォルトの名無しさん:02/10/27 00:16
ハードドライバやっているけど
アプリケーションソフトを仕事にはしたくないなあ。
20年後の自分を想像すると。
40才すぎて新しい言語が出るたびにいちいち覚えてられない。

26 :デフォルトの名無しさん:02/10/27 00:17
回路読めてハードができたらベンチャーや個人でビジネスがやれると考える方が甘い。

27 :デフォルトの名無しさん:02/10/27 00:20
>>25
そうそう。あなたはそれしか出来ないんだから。

28 :デフォルトの名無しさん:02/10/27 00:20
ドライバ書けて、回路読めて、ハードも触れるなら、IPビジネスやれるだろ
儲かるかどうかは別にして 最近頑張ってるのは液晶ドライバの

・・・・っと、あれはソフトとは違うか

29 :デフォルトの名無しさん:02/10/27 00:23
>>28
儲からなくていいなら誰でもやれますよ(プ

30 :デフォルトの名無しさん:02/10/27 00:25
この世界は、オープン系と違って、千倍差あるっていう技術がそのまま面に出るからね。
ホントに技術があるなら、個人でも大企業は相手にしてくれるよ。(たとえ間に別の業者入れられたとしても)

31 :デフォルトの名無しさん:02/10/27 00:25
>>27
VC、Javaも仕事でやってことあるけど。
あんたはハードドライバ解るのか?


32 :デフォルトの名無しさん:02/10/27 00:30
>>1-31
海外に仕事を発注するのでお前ら必要ありません。

33 :デフォルトの名無しさん:02/10/27 00:33
インド人が糞コードを書き散らして逃亡しました!

34 :デフォルトの名無しさん:02/10/27 00:34
>>28
液晶ドライバも資料はたいがい英語だな。
レアなチップだと仕様を理解するのに苦労する。
ただあれは回路が解らなくてもソフトは書けるな。

35 :デフォルトの名無しさん:02/10/27 00:40
チップセットとドライバセットにしてIPビジネス展開するのが最近のベンチャーの流行かな

36 :デフォルトの名無しさん:02/10/27 00:44
ところで、「ハードドライバ」って一般的な言葉なの ?

37 :デフォルトの名無しさん:02/10/27 00:47
>>35
はっきり言ってやろう。

おまえにビジネスの才能は無い。

38 :デフォルトの名無しさん:02/10/27 00:49
ハードウエアレベルのデバイスドライバーって事だと解釈してたけど? 違うの?

IPビジネスは最初、 インターネットプロトコルを使ったビジネスだと思って話聞いてて
たまたま、その話はそれに近い話だったんで話がそんなにズレてなくて、良かった〜 って経験があるよ

39 :デフォルトの名無しさん:02/10/27 00:51
>>37
ありがと。判ってるよ。 自分にビジネスの才能がないのはね。

40 :デフォルトの名無しさん:02/10/27 00:53
USBが出始めの頃はそれを売りにしている会社が結構あった。
IPビジネスでいかに利益を得るかはチップや規格が出てからの
スピードにかかっている。
今後はBluetuth、IEEE802.11a等の無線LANが狙い目だと思う。

41 :デフォルトの名無しさん:02/10/27 00:56
>>40
そういうのは規格作成に関われる大手に抑えられるから 個人でやるにはチョット厳しいかもね
最初はニッチを狙わないと


42 :デフォルトの名無しさん:02/10/27 01:09
>>37
いや、ビジネスをわかってないのはお前の方。
最近は、デバイスドライバなんてかける奴はそうそういなくなったから、チップだけよくても使ってもらえない。
きちんとドライバとセットにしないとだめ。
つまり、>>35 は必要条件と言うこと。(もちろん、十分条件じゃない。)

>>38
だよねー。だったら、普通に「デバイスドライバ」で言いと思うが...。
つーか、「ソフトドライバ」ってあるの ?

> IPビジネスは最初、 インターネットプロトコルを使ったビジネスだと思って

と言うのもあるけど... (>>40 とかもそう思ってる口だな)。

>>35 が言ってるのは、多分(IP:Intellectual Property)の方だと思うぞ。

(>>37 は、よくわかっていないと思う。)

43 :デフォルトの名無しさん:02/10/27 01:17
いや、俺が 良かった〜 ってのもちょうど >>40みたいな話だったんで話しが通じてたからなんだよな。
後で調べて一人で赤面したよ。


44 :デフォルトの名無しさん:02/10/27 01:18
>>42
IPビジネスって、ようはARMのような形態で(つまり物ではなく
一部分のサービスとしてとして)
提供するビジネスと思っているのだが。
FPGA/PLDには適しているな。

45 :デフォルトの名無しさん:02/10/27 01:22
>>42
ソフトドライバって言うと、MPEGとかのエンコーダ・デコーダみたいな感じのニュアンスで使うかも

46 :デフォルトの名無しさん:02/10/27 01:34
>>44
とりあえず PLDには向かないだろ

47 :デフォルトの名無しさん:02/10/27 01:45
>>46
理由を述べよ。

48 :デフォルトの名無しさん:02/10/27 01:46
>>43
ああ、そう言うことですか。だったら、納得。
確かに、通信系の LSI なんかの話してると、(思い込みもあって) それなりに辻褄が合ってしまうので、深みにはまりそうですね。

>>45
ソフトドライバと聞くと、私は /dev/null とかのハードウェアを持たないデバイスドライバを想像してしまうんですけど...。

49 :デフォルトの名無しさん:02/10/27 02:01
>>46
理由ってこっちが聞きたいよ。
CPLDじゃなくて PLDだろ? そんなもんどうやってIPビジネスにするんだよ?

50 :デフォルトの名無しさん:02/10/27 02:03
>>49
なんだよ、言葉遊び厨かよ。
CPLD を含む総称として、PLD を使ってるってことでいいだろ。

51 :デフォルトの名無しさん:02/10/27 02:10
>>49
PLDでは語弊があったな。規模から見てCPLDだな。
ただCPLDというと自分はアルテラの製品を連想してしまう。
まあどうでもよいが。

52 :デフォルトの名無しさん:02/10/27 02:17
今なら DSPアプリも狙い目かな

53 :デフォルトの名無しさん:02/10/27 11:16
ハードドライバのスレハケーン

54 :14&20:02/10/28 00:04
ここってハードドライバのページなのにCPLDの話になっているw

>>22
まあそうだよなw
漏れもメーカー勤務なんだけど、ハードドライバが分からない上司が「人が足りないなら外注採れ」
って言ってくるので仕方なく・・・
結局、テスター程度を雇うだけだけど。
やっぱりソフトハウスにハードドライバできる奴っていないよな。
上司が分かってくれればいいけどね

55 :デフォルトの名無しさん:02/10/28 16:08
>>20=14
漏れ零細にいるけど糞窓のもLinuxのも書けるよ。ハードベタベタ触る奴。
そもそも組み込み系だし。
で、もうすぐ転職予定。
いつまでも小さいのにはそれなりの理由があるのよ。つまり、大きくなれな
いDQNなマネジメントしてるってワケ。

んなわけで、いてもすぐ逃げ出しちゃうので小さい所にはにはそういうのが
いないのではないだろうかと思ワレ。

56 :14&20:02/10/28 22:48
>>55
なるほど。
レジスタ叩くハードドライバが書けるのならもっと大手に行った方がいいよ。
自分の売り込み方を間違えなければ、それなりの会社に行けるはず。


57 :デフォルトの名無しさん:02/10/29 23:49
このスレだったらまともな回答返ってきそうだ。
LSI設計やってます
最近SpecCとかSystemCとか
はーどうえあをC言語もどきで
記述するというアホな考え方が蔓延
してきました。
ソフトもハードも境界がない時代が
やってこようとしてます。
ソフト技術者から見るとどう感じますか?


58 :conflict ◆BMrqngXGkM :02/10/30 00:05
>>57
何でアホな考えだと思うの?

59 :57:02/10/30 00:38
ソースから想像できないような
回路ができあがちゃったりする。
1024bitのバスが32個ある回路とか
無意識にポインタを使って巨大な
レジスタが生成されたりとか。
考えただけで恐ろしい。

60 :14&20:02/10/30 01:00
>>57
ディジタル回路を言語で作るのは正しいと思う。
ソフトウェア=ディジタル回路のシーケンスなのだから、本来は同じものと考えてもいいはず。
ENIACも配線でプログラムしていたのだし。


61 :conflict ◆BMrqngXGkM :02/10/30 01:08
>>57
そういう意味ね。まぁ C コンパイラも最初はそう言われたらしいから
徐々にまともな回路を生成してくれるといいね。

62 :デフォルトの名無しさん:02/10/30 02:21
>>57
個人的には関数型言語の方が合うんじゃないかと思ってる。
実際にはそういう研究もある/あったみたい。
でも、C言語を書ける技術者の方が多いからなぁ。

63 :55:02/10/30 14:45
>>56
そだよね。大手だからいいとは言えないだろうけど転職すべきだよね。

それはそうとそろそろいい歳こいてきた(今30)ので技術者俺一人なのにもかかわ
らずマネジメントの勉強とかもしてるんだけど、勉強すればするほど現勤務先の
DQNっぷりが見えてきて...転職する事にしたのですた。

64 :57:02/11/01 00:41
>>60
>ディジタル回路を言語で作るのは正しいと思う。
そう、確かに現状でもVHDLとかVelilog-HDLっていう
ハードウエア記述言語で設計している。
そのレベルだと記述を読んでどういうできるか回路が想像できるけど
C言語で書いてあるとそこからどういう回路になるのか想像できない。
でも最終的には仕様が満たせればハードだろうがソフトだろうが
どっちでもいい。
>ソフトウェア=ディジタル回路のシーケンスなのだから、本来は同じものと考えてもいいはず。
>ENIACも配線でプログラムしていたのだし。
その考え方は正しい
そもそも回路をシミュレーションするためのプログラムもCで作られているんだから。
>>61
そうなるにはあと3年はかかると思われる
もしそうなったら、おいらの仕事手伝ってね。
>>62
>でも、C言語を書ける技術者の方が多いからなぁ。
そうこれが一番の理由でC言語ベースの言語が開発されてる。
ソフト技術者からハード技術者へのシフトが始まってる。
N社とかF社とかで。

65 :conflict ◆BMrqngXGkM :02/11/01 03:21
>>57
俺なんか 3 年後に HDL がせいぜいだよ〜。

しばらく前の日経エレに載ってた C ベースで
MPEG4 のデコード(エンコードだったかも) LSI 設計した
っていう記事読んだ?
もし読んだなら感想を聞かせて欲しいんだけど。

> そのレベルだと記述を読んでどういうできるか回路が想像できるけど
> C言語で書いてあるとそこからどういう回路になるのか想像できない。

とあるけど C だってアセンブリレベルでどういったコードに落ちるか
ある程度わかるわけだし HDL のそれとあまり変わらないんじゃない?
そう考えると記述言語の抽象度はあまり関係ないんではないかと思うのだけど。


66 :デフォルトの名無しさん:02/11/03 02:05
ソフト屋の習性としてルーチン内の処理は上から下へ順番で実行される
と言う概念がある。
ハードを書くときはその辺の常識を忘れなければならない。

67 :57:02/11/04 01:28
>>65
>感想を聞かせて欲しいんだけど。
もちろん読んだ
確かSH社のことで他にSo社やO社の
事例もあった。
どの会社も(半導体部門持ってる会社)
研究レベルの試行は終わってそろそろ
実用段階に入ったのかなって感じ
ただ圧縮・伸張処理とか画像処理は
データーの流れが一方向だし
全部新規設計だったから適用しやすかったと思う。
だけど普通は複雑な制御回路があったり
過去のきれいじゃない回路資産を
使いたい場合があったりするするから
簡単にはいかないと思う。
>>66
そうだ、いいこと言た
ハード屋の場合は逆ですべて並列処理で
データの変化はクロックと言う考え方だが
抽象度が高くなるとクロックの概念がなくなる
だからわけわからなくなる。




68 :デフォルトの名無しさん:02/11/04 11:36
>>67
おまいはもう少し物事を巨視的に読み書きする訓練しろ

69 :57:02/11/04 22:23
>>68
なにがいいたいのか?
おれはソフト技術者側からの
ハードのC言語化の賛否を聞きたいだけだが。

70 :デフォルトの名無しさん:02/11/05 00:25
>>69
まあここはプログラム板っつー事で
ソフト寄りな書き込みの方が喜ばれるっつー事よ。
たとえそれが真実と異なっていてもな。
俺個人的な意見としてはあんたみたいな
人がいたほうが面白いけどな。


71 :57:02/11/06 00:43
うーん
まともな議論ができるかと思ったけど
話の腰を折られたようだ
てことでこの話題はおしまい。

72 :デフォルトの名無しさん:02/11/10 02:22
なんでバカが一人二人紛れたくらいでそんな。
そこそこ面白そうだったんだがなぁ・・・。

73 :デフォルトの名無しさん:02/11/17 12:21
WinMX 最 高 !

74 :デフォルトの名無しさん:02/12/01 21:08
Windows は屑

75 :57:02/12/03 02:06
あげちゃったりして
>>68
うん、この手のものは巨視的にみなきゃ
いけないのはようわかる、だがLSIは納期が命
だが研究分野と実務レベルで大きな隔たりがあるような
気がする。
>>70
ありがと
おいらとしてもソフト屋さんに
協力してもらいたい訳よ
とくにドライバ屋さん
>>72
一瞬むかついたが68はバカではないな
ツールを売り込みたいEDAベンダの人間か?
それとも”おまえの会社は遅れてる”といいたいのかな?


76 :57:02/12/03 02:11
スレちがい?
工学板逝った方がいいすか?

25 KB
■ このスレッドは過去ログ倉庫に格納されています

★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.04.00 2017/10/04 Walang Kapalit ★
FOX ★ DSO(Dynamic Shared Object)