今年初めての氷点下の日

昨日は非常に寒い日だった。

うちの近くの観測点ではこの冬で初めて氷点下を記録したようだ。


朝、父が自動車で出る時、窓ガラスが凍っているというからお湯をかけて出て行った。

たしか火曜日も同じことを言ってたか。もしかするとそのときもうちでは氷点下行ってたのかもしれん。

その後、僕が自転車で出かけようとして、自転車を見ると、なんかサドルが凍ってる。

そんなんだからサドルに座る気にはならなかった。

ただ、そんなんでもあまり寒いとは感じなかったんだから、この前のダウンえらいわ。(参考記事 : ユニクロでみつけたよいもの)


学校の最寄り駅に着いたら、そんなに寒いとは感じなかった。

まぁ標高も低いし、最寄りの観測点でも氷点下には行ってなかったようで。

ただ、そんな学校でも今日が寒いことは話題になっていた。


というのも、朝のテレビで針で-2.0℃を観測などニュースになってたからよね。

-2.0℃というとかなりインパクトあるわな。

そんなわけで今日は寒いなぁと話題になっていたのだろう。

話題にしていた人に針周辺の人はいなかったけど。

今日、氷点下切ってたところから来た人なんて僕ぐらいじゃないかなとも思った。


余談ですが、針という地名は、奈良県東部の山間部にある。

かつて都祁村だったのだが、市町村合併でなんと奈良市になってしまった。

だから、針で-2.0℃を観測したというのは、「奈良市で-2.0℃を観測」など言うことも出来るわけだ。

とはいうのもの、奈良市の中心では最低気温1.5℃なのよね。なんと同じ市内にして3.5℃も違ったのよね。

奈良市の東部というのは旧都祁村に限らず山の険しいところで標高も高い、だから寒いのよね。昔から奈良市の柳生も同じぐらい寒くても不思議はない。

そんなもんだから、多くの奈良市民にもそう言われても実感のわかない記録だったんだろうなと思いますよ。

78K+R8C=RL78という話

SuperHってどれぐらいのクロック周波数で動いているのだろうと、昨日ルネサスのWebサイトをみてたら、

なんかマイコンが増えてる。ローエンドのところに RL78 なるマイコンが増えてる。

これ、実はおとといに発表された新マイコンらしい。


78KとR8Cを融合・発展させた新マイコン「RL78」の発売について (ルネサスエレクトロニクス)

以前、このBlogでも話題にしたが、ルネサスはローエンドに2つのマイコンを持っている。(参考記事 : まさにマイコンのデパート)

旧ルネサステクノロジが旧三菱電機のM16Cを元に旧日立のH8の要素を取り込んで作ったR8Cと、旧NECの78Kの2つですね。

今年9月時点ではこの2つのコアについて当分はそのまま残していこうという方針を発表していた。

同じことはハイエンドのSuperH(旧日立)とV850(旧NEC)にも言えることだ。

ただ、将来的には統合されるんじゃねーのという話は誰もが考えることだ。

なんとその2ヶ月後の11月には統合したローエンドについては新マイコンを発表したわけだ。


RL78と見て、78Kと名前が似てるなと思ったかも知れない。僕はすぐに気付かなかったけど。

実に78Kシリーズの78K0Rのコアをベースに、R8Cに搭載されている周辺機能を追加した物らしい。

どうも78K0Rは新しいコアらしく、消費電力が低くて高性能らしい。

そこにR8Cに載ってるような便利な機能を追加していこうという話らしい。

まぁこのあたりはR8Cの発想と一緒よね。それと同じことを78Kのコアを使ってやろうという話だろう。

しかし消費電力低いなぁ。周波数と電圧を適当に決めてやると、70[μA/MHz]×24[MHz]×3[V]=5[mW]ですか。

ちなみに僕がFPGAで設計した回路の消費電力の見積もりは0.5[W]ぐらいだったか、比較にはならんな。


問題は開発環境の統合ですね、それができればこれまでR8C使ってた人も移行しやすい。

とりあえずは、オンチップエミュレータとフラッシュライタを統合するようです。

ソフトウエア開発ツールですが、これについては78K0Rのコアをベースにしてるから、当分は旧NECの開発環境のCubeSuiteのみのよう。

ただ、これも来年度には統合するそうです。

こうなれば、コア統一も夢じゃないか。


こうしてR8Cは将来消えるだろうということはわかりましたが、

きっとSuperHとV850にも将来同じような統合の話が出てくるんだろうなと思っている。

果たしてどうなるのかはしらないけど、よいところを伸ばし便利な物になればいいですよね。

回路の遅延とnsの戦い

今日はUCF制約を書きながら、配線などしてた。

実は配線の工程が一番心配だった。というのも133MHzともなると回路の遅延にずいぶんシビアになるから。

いったいどんなことになるのか、実行してみるまでわからなかった。

実行させてみて、配線の結果を見ると……なんか×マークが出てる。いくつかタイミングのエラーが出ていたようだ。


ところで論理回路の遅延についてとやかく言ってるのはなぜかご存じですかね。

トランジスタのスイッチのON・OFFの切り替えに時間がかかるので、入力が変わっても出力が変わるまで少し時間がかかるんですね。

さらに複数の信号が同時に変わると、ハザードという現象により、変わってすぐは実際の出力じゃない値が出てくることがある。

そんなわけで、正しい出力が得られるまでにはしばらく時間がかかる。組み合わせ回路だけではこういう問題があるわけだ。

そこで、この出力をフリップフロップ(FF)につないで、クロックにあわせて取り込む。

こうすれば、正しい出力がクロックにあわせて出てくる。こういう順序回路が主になっている。

こうすれば1クロック後には確実な値が得られるわけだ。

ただ、信号が変化してからFFで取り込むまでの時間が、遅延より短いとうまく動かない。

そうならないために、UCFにあるタイミング制約を見ながら、回路の遅延を調整しているようだが、無理だとエラーになる。


というわけで、どこが問題なのかをPlanAheadを立ち上げて見てみる。

見てみると、オーバーしている時間と変化する入力信号とFFで取り込まれる出力信号の名前が並んでいる。

その詳しい情報を見ると、入力信号の変化するタイミングと出力信号の取り込むタイミングが見える。

見て、気付いた。これはひどいと。


というのも、MIGってメインクロックの立ち下がりと、そのクロックの位相を90度進めたクロックの立ち上がりにあわせて動いているのだが、

その90度進めたクロックにあわせて動く、データ入出力と周辺の回路のタイミングが問題だった。

module A(input I,output reg O) begin
  reg X,Y;
  always @(posedge CLK_90) begin
    X<=I;
    O<=Y;
  end
end
module B(input O) begin
  reg K;
  always @(posedge CLK_0) begin
    K<=f(O);
  end
end
module C(output reg I) begin
  reg L;
  always @(posedge CLK_0) begin
    I<=L;
  end
end

実際はこんなんではないが、AがMIG、BとCが周辺の回路と考えてほしい。

MIGは入力信号のIをCLK_90にあわせて取り込んで、出力信号のOをCLK_90にあわせて書き出している。

BはOを入力に取って、Oになんかして内部のレジスタYにCLK_0の立ち上がりのときに書き込むとする。

この場合Oが変化してから、Kに取り込まれるまで、3/4クロックの時間がある。

CLK_0が立ち上がってから1/4クロック後にCLK_90が立ち上がるなら、CLK_90の立ち上がりから数えれば3/4クロック後にCLK_0は立ち上がるからね。

なので、わりと余裕があるので、このパターンはわりとうまく動いてた。

問題はCの方、これはCLK_0が立ち上がりにあわせて、出力のIが変わる。

AはCLK_90が立ち上がったらIを取り込むので、なんと1/4クロックの間に出力を取り込む必要がある。

これがかなり厳しかったらしい。最初にエラー出た。

これの解決は入力信号を与える部分をCLK_0の立ち下がりで動くようにした。

これで出力が変わってから取り込むまで3/4クロックの時間をかけることができる。


こういう1/4クロックでやれという無茶な記述をずいぶんしていたので、そういうところは真っ先になおした。

ただ、それだけではなくならず、今度は1/2クロックでやれというところでエラーが出てきた。

立ち上がりと立ち下がりが混在するとどうしてもシビアになりがちだ。

ただ、MIGの都合もあるので、止む得ない面もある。

なのでFFを追加して、1/2クロック後にとりあえず信号をFF取り込んで、1クロックでやれというようにしたらこのあたりは解決できた。

それで全部解決できたかなと思ったのだが、1クロックでやれというところで少々エラーが出ているので、

このあたりを今度は直したいと思う。つくりが悪かったのよね。


133MHzの回路の設計は難しいわ。50MHzのときは全くエラーは出なかったのにね。

MIG周りの回路が完成したら、今度は画像処理のコアの回路を作る予定なのだが、

この部分は50MHzで動作させようと思った。その方がよっぽどいいだろう。

多分MIGの設計をした人もいろいろ苦労したんだろうな。MIGの作りってけっこう複雑なんだけど、速く動かすことを考えて設計したんだろうな。

おかげでMIG自体の配線では全くエラーが出ていない。さすがだな。

ここでMIGのエラーが出たらどうしようとおもったが、その心配はなかったようだ。

便利な機能を有しているFIFO

今日も放課後に研究をしていた。

一応回路ができたので、論理合成してたらなんかエラー出るから調べてたらMIGの使い方を間違えていたというな。

またそのことは今度まとめて書こうと思うけど、驚いた。

それはそうとして、今日はFIFOの話。


この前、FIFOの使い方について書いた。(参考記事 : FPGAの中に行列を作るFIFO)

ある回路とある回路の間でタイミングを調整する時に使われるわけだ。

というわけで、色補間回路とDDR2 SDRAMを制御するMIGの間、MIGとVGA出力回路の間でFIFOを使いたいなと思った。

とはいえ、MIGは133MHz、他の回路は50MHzで動いているので果たしてどうやってタイミングを調整すればいいのか。

その答えはFIFO Generatorにあった。


FIFO GeneratorではFIFOの種類が選べるのだが、

まず1つ選ぶべき事は使うメモリの種類で、Block RAMを使うか、Distributed RAMを使うか。

今回作るFIFOは大きいからBlock RAMを使うけど、むちゃくちゃ小さいならDistrubuted RAMもいいかもしれん。

ちなみに、研究で使ってるFPGAのBlock RAMは16kbits、これだと16bit×1024のFIFOまでは大丈夫なようだ。

それ以上になるとBlock RAMを2つ以上使うようになるので、この範囲でなんとか抑えたいもの。

そしてもう1つ選ぶことがある。それはCommon ClockかIndependent Clockか、なんと読み書きで別のクロックを使うことができるんですね。

これで書き込むのは色補間回路の動作している50MHzのクロックで、読み込むのはMIGの動作している133MHzのクロックでということができる。


それでどうするか考えていたのだが、もう1つ問題が出てきた。

色補完した結果は12bitで出てきて、16bitずつDDR2 SDRAMに書き込もうと思った。

4bitは無駄になるが、メモリのデータ幅は16bitだから。

ところがDDR2 SDRAMは立ち上がりと立ち下がりで1回ずつ転送するから、MIGへは1クロックごとに2回分まとめて送る必要がある。

なので、32bitずつ取り出す必要があるわけだ。

さて、どうしようかと思った。FIFOのデータ幅を32bitにして、書き込む時に2回分ためて書き込もうと思ったが、そんな工夫は不要だった。

FIFO Generatorを見てたら、Write WidthとRead Widthというのがあった。なんと読み込みと書き込みでデータ幅を変えることができる。

だから、Write Widthを16bitにして、Read Widthを32bitにすれば、このようなことは簡単に実現できるわけだ。

逆にすれば、これはMIGから取り出したデータをVGA出力に受け渡す時に使える。

いやはや便利なもんだ。


こんなIPコアが無償で提供されているのは便利ですね。まぁ有償だったら自作してただろうけど。

Block Memory GeneratorでBlock RAMを呼び出して、自分でメモリを操作してFIFOを作ることもできますからね。

いやはや、便利だな。

こんな風に既にある物でやりたいことができるならいいですね。

できないならば、あるものを組み合わせたり、自作したりする必要がありますけどね。


さて、論理合成はできたようだが、果たしてうまく配線できるかねぇ。

その前にUCF制約をちゃんと整えないと。

高専の学生のうち寮生ってどんなもん

高専というと寮生の割合が多いとよく言われる。

実際どんなもんなのか調べてみた。


近畿周辺の高専の学生に占める寮生の割合、入寮率を調べてみた。

  • 明石高専 21%
  • 奈良高専 10%
  • 和歌山高専 60%
  • 舞鶴高専 60%
  • 鈴鹿高専 35%
  • 福井高専 23%

全国平均では38%ぐらいのようだ。

ちなみに、府立高専や神戸高専は国立ではないため寮がない。遠方からの入学は意図していないと。

このうち、奈良高専は寮の定員をかなりもてあましているようで、定員の75%ほどしか使われていない。

逆に福井高専は寮の定員が少ないから、希望してもなかなか入れないという事情もあるようだ。


まぁしかし、奈良高専は寮の定員をもてあましている上に割合が10%だから明らかに少ないことが分かる。

奈良高専は奈良県・大阪府の中部・京都府の南部の出身の学生が多いようだが、

このあたり一帯は近鉄とJRで移動しやすい。なので通学困難な人が少ない。

奈良県南部の山奥からだと通学は不可能だから通学困難な人は確かにいると思いますけど、そもそも人口が少ない。

学校も駅からはやや離れているものの、郡山は近鉄もJRも通っているので、奈良県内でも交通の便のよいところに立地していると言えるだろう。

その結果、10%というきわめて低い入寮率になっているのだろう。

実際には、寮の定員をただもてあますぐらいなら、通学困難でなくとも入寮してもらおうというのがあるようなので、

なので、90%どころかもっと通学が容易な学生が多そうだ。

なかなかこんな高専も珍しいだろう。高専ってへんぴなところにあることが多いみたいだから。


対称的なのが和歌山高専か。

和歌山高専は紀中の御坊市にあるのだが、その御坊市の中でもはずれの方にある。

そのため公共交通機関ではバスでの移動が欠かせないだろう。けどそのバスの本数もそう多くはない。

結局、公共交通機関での通学はかなり厳しく、おそらく通学するとすればバイクなのだろう。

そんな立地だからか、低学年の全寮制が取られている。

容易に通学可能でなければ1・2年はかならず寮に入ると。そのため1・2年の入寮率は84%とかなり高い。

ただ、3年以降入寮率は下がり、3~5年は平均すると47%と、高いのは高いけど、1・2年に比べると低い数字になっている。

結局、これは寮の定員の問題で、高学年になるにつれて通学容易な人は抜けていく必要があるのだろう。

高学年になるにつれて、バイクや自動車の運転ができるようになる。そのためこれまで通学困難な学生も容易になるのだろう。

舞鶴高専の事情も同じようなもので、ここも低学年の全寮制をとっているようだ。


このあたりは高専の立地によって決まる面が多そうですね。

高専自体の立地が悪ければかなり大きな寮を作らざる得ないのでしょう。

ただ、立地が悪い分、土地は確保しやすいんだろうね。大きな寮を作ることもできて、結果全寮制を実現できている。

一方、立地がそれなりにいいところは、土地を確保しにくいからどうにもならんのだろう。

福井高専も鯖江市の市街地に隣接していて、寮が足りないとはいえどうしようもないというのが実際のところなのかもしれない。


まぁ僕は十分通学可能なので、自宅から通っているけど、そうでない人にとって寮は欠かせないものでしょう。

そのあたりの事情が見えてきた気がする。

ユニクロでみつけたよいもの

母が「ユニクロに軽くて薄いの売ってる」というので、どんなものかと思い、昨日お店に行った。

なんかセールやっててたようで、かなり混んでいたが、そんな中にドンと陳列されていた。


ユニクロ ウルトラライトダウン

これのことですね。206gと軽さをアピールしていますが、確かに軽い。

中に羽毛が入っているのに、これまで着ていたウインドブレーカーと比べて重いとは感じない。

中に羽毛が入っている分暖かいのもよい。これはいいなと思い、これのパーカーを購入。

5990円と安くはないなと思ったが、羽毛使ってるしそれぐらいは当然するかと思ったし、それだけの価値はあると思った。


今日は最低気温は10℃ぐらいであまり寒くはなかったが、

風を防ぐだけでなく体温を逃がさないので、とても暖かかった。

これだけで冬を乗り切れそうだ。

たたんでも小さいからいらなくなってもすぐしまえるので便利ですね。


去年もこういう話を聞いたのだが、実はそのときの情報源というのが祖母だったのよね。

意外にもお年寄りにも人気があるようだ。

やはり品揃えがいいのがまず大きいだろう。ここに来れば全身揃うと。

その上、値段が手頃で、品質も十分よいから、また足を運ぼうと思うのだろう。

安くても使えんなぁとなれば定着しないはずだけど、そんなことはないですからね。

そしてお店に行ってみたらいいのあったよということで話題にしたのだろう。


しかし、ようこんな軽いの作ったわ。

細い糸を用いて生地を作ってみたり、羽毛の入れ方を工夫したりしてこういうものができたようだ。

新しい試みをして、こういう新しい商品を作っていくのはなかなかすごいなと。

安いだけで人を引きつけるには限界があると思うけど、このようにこれまでになくよいものを投入していけばお客さんも集まるわな。

実に、そういう風にして引きつけられた客の一人が僕ですが。

Athlon Neoを積んだEee PC

弟が新しいノートPCを買った。

そのノートPCが僕の持っているdv2に似ているように感じたので書いておこうと思う。


そのノートPCというのがASUSのEee PC 1201Tですね。

なにが似ているって、まずはCPUですね。AMDのAthlon Neoなんですね。

Eee PCというと、Intel Atomを積んでいる印象があるが、こんなのもあるんですね。

画面は12.1インチの解像度1366×768の液晶ディスプレイを積んでいる。

Eee PCの主力は10.1インチの解像度1024×600の液晶ディスプレイの気がするが、それに比べるとやや大きく解像度も高い。

縦方向に600pxだとかなり窮屈な気がするが、768pxならやや広々と使えそうだ。

dv2では12.1インチで解像度1280×800の液晶ディスプレイを積んでるからあまり差はない。

値段としては約4万円で買ったらしい。店によるがだいたい4万5千円前後で手に入るようだ。

dv2は6万円ぐらいで買ったからそれに比べると安かったようだ。

ちなみにdv2はもうラインナップから消えていて、dm1aというこれよりやや小さなマシンに変わったようだが、

画面は11.6インチの解像度1366×768の液晶ディスプレイになってやや小さくなったようだ。

値段は同じぐらいで、量販店モデルで6万円、直販だと8万円ぐらいするようだ。直販モデルはストレージがSSDらしいけど。


Eee PCというとネットブックのイメージが強いが、それに比べるとやや大きなノートPCである。

ちょうどこの大きさぐらいまでなら持ち歩くには便利だし、操作面でもこの大きさぐらいあれば便利だろう。

CPUもAthlon Neoと、Athlon 64とほぼ変わらず低消費電力化されているだけのCPUなのでそれなりに強力なはず。

調べたら、AMD-VTも搭載しているらしい。何に使うのかという疑問はあるが、そのあたりも変わらないようだ。

GPUもAMDのチップセットに内蔵されたRadeon HD 3200なので、それなりに使えそう。

僕がノートPCを選んでいた時にあったら買ってたかもなと思った。


毎度、こういうノートPCの話をする時に言うのだが、この程度の大きさのノートPCだとLet’snoteが有名で、いいらしいけど、値段がかなり高くて手が出ない。

同じぐらいのサイズで、もうちょっと安く買える物はないかなというと、意外と少ない。

悩んだ結果HPのdv2を買ったわけだが、最近ではそういう領域のノートPCも増えてきているようだ。

ASUSはそういうマシンをEee PCという名前でなくともいろいろ出しているようだ。これは新しい発見だった。

低消費電力のCPUが安く入手できるようになったというのがこのあたりのきっかけらしいですが、こういうのが増えるのはいいことですね。

インフルエンザの予防接種を受けてきた

今日はとある診療所に出かけていた。

なんのためって、インフルエンザの予防接種ですわ。


一ヶ月ぐらい前にさかのぼるが、親は以前インフルエンザの予防接種を受けた診療所にインフルエンザの予防接種を受けたいと連絡したらしい。

そしたら、やっとらんとかそういうことを言われたそうで。

別のところを当たったらうちはやってるということになったそうで。というわけで初めて行く診療所へ。

そしてその診療所に行ったわけだが、むちゃくちゃ混んでる。椅子は埋まり、立つ人まで出る始末。

この人たち、ほとんどインフルエンザの予防接種の人、というかそれ以外の人はいたのだろうか。


予防接種自体は、事前に家で体温を測って問診票を書いて持っていっておいたので、

しばらく待ったら呼び出されて、問診を受けて、注射打って終わり。

今更ながら、献血の針がいかに太くて痛いかわかった。注射打つだけたいして太い針いらんからね。痛さがだいぶと違う。

終わったら、30分ぐらい様子を見てから帰る。このあたりはどの予防接種でも一緒ですね。


インフルエンザの予防接種というのは基本的には自分で費用を負担して受ける。

今日のは3000円だったかな。自由診療なので診療所で勝手に値段を決めていい。

もっとも、今回の接種にあたっては健康保険組合からいくらか補助が出るようですが。

ただ、高齢者については無料や安価で受けられるように市町村が補助をしていることが多い。

というのも、インフルエンザというのはお年寄りなど身体の弱い人にとっては致命傷となりかねない病気だから。


最近、こんなニュースがあった。

病院でインフルエンザ、6人死亡=秋田 (時事通信社)

60代~90代の入院患者6人がインフルエンザで死亡したという話。

ここいらへんからもわかるが、インフルエンザというのは感染力が強くて、身体の弱い人は死んでしまうもある。

病院にいる人というのはだいたい身体の弱っている人だから、流行るとえらいことなのだろう。

こういうあたりからも、身体の弱い人にとってはインフルエンザの予防接種の意義はたいへん大きいので受ける方がいいでしょうね。

また、そう言う人の近くにいるひとも、インフルエンザを感染して、ウイルスをまき散らさないように予防接種を受ける意味は大きいでしょうね。


もっとも、他の風邪と同様に健康な人ならばいくらウイルスがあっても発症しないだろうというのも事実ですけどね。

そんなわけで健康的な生活を心がけていきたいなと。

インフルエンザの予防接種を受けても、他の風邪に可能性は十分あるし、インフルエンザだって完全に防げる訳じゃない。

だからこれが一番大切なことなんですよ。


余談ですが、インフルエンザのワクチンは毎年、このシーズンはこれが流行するだろうと言うウイルスをいくつか選んで、その抗体が付くように作っているんですね。

今年のワクチンはおおざっぱに言えば、A香港型と、去年流行した新型インフルエンザウイルスと、B型の3つのウイルスを選んだらしい。

詳しいウイルスの株はようわからんが、効果的と思うのを選んでいるはず。これはWHOで決めているから世界共通らしい。

去年ももちろんこの体勢でやっていたのだが、去年のワクチン製造時には新型インフルエンザウイルスの存在は知らなかった。

そして急に新型のウイルスがでてきたから困って、新しく新型インフルエンザウイルス専用のワクチンを作ることになったわけだ。

去年はインフルエンザのワクチンが2種類あるという変な状態になってしまったのはこのせいなのね。

ただ、今後また新型のウイルスが出てくるかも知れない。そのときには去年と同じ体勢で挑むことになるかもしれない。

今後そういうことが起きた時に、去年の経験が生きてくれればいいですね。

もっとも、そんなこともなければ人間にとっては安心なんですが。

ハイインピーダンスの上手い使い方

今日は午後から授業がないので、MIG周りの回路を設計していた。

とりあえず今日は書き込みの回路を書き終わった。シミュレーションしないとちゃんと動くか分からん。

あと、シミュレーションでは良くても実機では上手く動かない可能性もあるし厄介。


ところでVerilogではポートにはinput,output,inoutの3種類がある。

inputは入力ポート、outputは出力ポートなのはすぐわかるが、inoutってなんじゃとなる。

inoutは入力にも出力にもなるポートですね。

どうやって入力と出力を兼ねるのか、使い方が気になるポートだが、ちゃんとうまい使い方がある。

module A(inout [7:0] X,input X_OUT_EN)
  reg [7:0] X_OUT;
  assign X= X_OUT_EN ? X_OUT : 8'hzz;
  //(略)
endmodule

ポートに信号を出力するというのは、ポートの電圧をHかLにすることだが、両方から同時に出力するとショートしたりしてまともに動かない。

そこで片方が出力している時はもう片方はHにもLにもしない状態にする必要がある。

その状態こそがハイインピーダンスですね。Verilogではzで表す。

というわけで出力するときだけ、X_OUTの値を出力し、それ以外の時はハイインピーダンスにしておく。

ハイインピーダンスにしておけば、接続先の出力信号を読むことができる。読む時はそのまま読めばOKです。

今回inoutは直接は使わないのだが、DDR2 SDRAMのデータ端子はinoutでしたね。MIGがこのへんうまいことやってくれてるはず。


同じことは接続された複数のモジュールのいずれかから出力する時にも言える。

module B(output [7:0] DOUT,input EN)
  reg [7:0] DOUT_REG;
  assign DOUT= EN==1 ? DOUT : 8'hzz;
endmodule
module C
  wire [7:0] DOUT;
  reg [3:0] EN;
  B b1(DOUT,EN[0]);
  B b2(DOUT,EN[1]);
  B b3(DOUT,EN[2]);
  B b4(DOUT,EN[3]);
endmodule

4つのBのDOUTを全部同じDOUTに接続しているので、いずれかのBからしかDOUTに出力することができない。

そこでBでは出力するべきときだけDOUTから出力してそれ以外の時はハイインピーダンスしておけばいいと。

こういうときにもハイインピーダンスは役に立つ。


このハイインピーダンスというやつ、コンピュータの中でも大活躍している。

コンピュータのバスというのは、出力する時だけ出力して、それ以外の時はハイインピーダンスにすることで、1本の線を複数のモジュールの出力で共有できている。

もしこれがなければ、メモリからの出力用、CPUからの出力用など出力するところごとに用意する必要がある。

さらにハイインピーダンスがなければ入力と出力を共用できない。すなわちメモリはデータ入力端子とデータ出力端子を別々に用意する必要が出てくると。

実にハイインピーダンスがなければ不便なわけですわ。

ということを、以前のコンピュータ応用工学の授業でやった。


実際にどうやってハイインピーダンスを実現するのかという話だが、スリーステートバッファを使う。

スリーステートというのはHとLとハイインピーダンスという意味ですね。

入力信号とハイインピーダンスにするかの信号線をつないで、それに応じてハイインピーダンスか入力信号と同じ値を出力するかするバッファですね

Verilogでさっきのように書いて、論理合成して配線すると、出力をスリーステートバッファにつないでくれるんだと思いますよ。

あまりそんなことは気にせず書いているけど、実際にはそうなるはずです。

名古屋と奈良を結ぶ近鉄特急

以前、急行で自宅に帰っていたら、特急待ちの駅でこんな放送が流れていた。

次の特急は、前からA号車、B号車、1号車から6号車で参ります。

号車番号表示器は動いていません。柱に貼ってある掲示を見てください。

とかなんとか。


これは名古屋行きの特急なんですが、難波発の定期特急に西大寺発の臨時特急をくっつけて走っているんですね。

臨時列車なもんだから駅も対応してないからこういうことを言っていたわけだ。

この名古屋~西大寺の臨時特急は平城遷都1300年祭に合わせて、休日限定で1往復走っているものですね。

近鉄名古屋⇔大和西大寺直通特急で世界遺産の宝庫 奈良へ行こう!(近鉄)

先日、平城宮跡会場は終わったけど、来年2月まで継続して運行することになったようだ。


名古屋~奈良の直通列車というと新しいなと思ったかも知れないが、実は2006年までそういう列車があったんですね。

JRが急行かすがという列車を走らせてたんですよ。

ちなみにJRの急行は有料で急行料金がかかる。昔は多かった。けど今はほとんど特急になってしまった。そんななか急行として残っていた生き残りの1つだった。

これは、快速みえ用のディーゼルカーで名古屋駅~JR奈良駅を関西本線経由で2時間ちょっとかけて1往復走っていた。

実は近鉄特急と所要時間は同じぐらい。名古屋~奈良だと関西本線ルートが最短なのよ。少々線路が悪くても速く着く。

ただ、あまりにマイナーすぎて、急行というのが微妙すぎて廃止になった。

おそらくそれ以来、名古屋~奈良の直通列車というのはなかったはず。


ただ、それ以前から名古屋~奈良の移動に近鉄特急を使うことはできた。

というのも近鉄特急には乗り継ぎ料金制度があるから、近鉄特急同士を乗り継ぐというのも選択肢に入る。

確かに直通列車はないけど、きちんと乗り継ぎのことは考えられていて、

西大寺7:44発の賢島行き特急に乗れば、八木で向かい側にいる名古屋行きの特急に乗り換えれば9:53に名古屋に到着することができる。

だから直通列車はないけど、直通列車のように使うことはできた。

とはいえ、このように使えることを知っている人は限られるかも知れない。


そこでこういう臨時列車を設定することにしたのだろう。

直通列車があるなら近鉄特急で行こうかと考える人が出てくるだろうと考えたのかも知れない。

近鉄で行けることを知らなければ新幹線+近鉄で行きかねん。近鉄にとってはそれはおもしろくない。

もし臨時列車が満席になっても、八木で乗り換えれば行けるよと窓口で案内することができる。

そういうことを意図してこういう臨時列車を設定したのだと思いますよ。

ちょうと西大寺駅は平城宮跡の最寄り駅、ちょうどいいと思ったのだろう。

実際には近鉄奈良駅に乗り入れるには方向変換が必要だから、煩わしいし西大寺発着にして奈良駅へは乗り換えてもらおうと言うことだと思うけど。

この臨時特急は来年2月まで継続して走るわけですが、この利用状況によってはその後も残るかも知れないね。

平城遷都1300年祭が終わっても西大寺行きなのは変えようがないけど、よその人からするとその駅なにと思うかも知れんね。

そこらへん対策した方がいい気もするけど。

あと、奈良駅に行けないなら開き直って西ノ京駅に止まるとかそういうことはできないのかなぁ。できたら既にしてるか。


ところで、この臨時特急、休日は基本的に運行しているのですが2月をみると2月26日は土曜日だが運転しない。

毎月26日は天理教の月次祭がある。なので、名古屋~天理の特急が走る。

この特急って実は西大寺行きの特急と同じように、八木で難波発着の特急と連結して走るのよ。

実はそういう列車はずっとずっと昔からあった。今回の名古屋~西大寺の特急もこれの応用らしい。

だから、天理教のとかぶったらそれは天理教の方が優先だと。そういうことですね。