Eureka EngineeringLearn about Eureka’s engineering efforts, product developments and more.
概要 ファミコンのエミュレータをJSでだらだらと作ってた。そこそこ遊べるようになったので公開しておく。技術的な内容は、またどこかで発表したり、Qiitaなどにまとめたい。(忘れないうちに。需要があるかは怪しいが。) 随分昔に作ってみたいなーと思いFPGAでの実装を開始したんだけど、早々に挫折した覚えがある。今思うとFPGAの場合タイミングの問題が付き纏うのでJSで書くより圧倒的に難易度も高いし、ハードエミュレータを実装するにしても前段階としてソフトウェミュレータを実装するのが定石っぽいので無謀だったっぽい。 ひとまずMapper0という基本的なカセット形式のみに対応し、スーパーマリオブラザーズがそこそこ遊べるくらいを目標とした。 成果物 github.com ファミコンのスペック MPU 6502(RP2A03), 8bit WRAM2KB VRAM 2KB 最大発色数 52色 画面解像度
ドワンゴがニコ動の画像配信向けにFPGAエンジニアを募集したり、マイクロソフトはBingをFPGA実装したり、Baiduもディープラーニングの高速化にFPGAを導入したりと、なんだか世の中急にハードウェアくさくなってきた。IoTとは違う意味で。 金融分野ではすでにCPUでは遅すぎてFPGAによるナノ秒単位の株取引が行われているって記事を書いたのは2年前だけど、ここ数年はIntelのCPUのクロックもあまり上がらなくなってきたし、Fusion-ioやNetezzaといった大手御用達のハイエンド鬼速ストレージも、フタを開ければ中身はすでにFPGAに移行済み。IBMが最近出したData Engine for NoSQLという製品ではPOWER8プロセッサにFPGAを直付けしてRedisを高速化したり。いよいよデータセンターにも、先の見えないCPUに代わってFPGAやGPUを導入する波が押し寄せつ
------- GND -- |01 31| -- +5V CPU A11 -> |02 32| <- M2 CPU A10 -> |03 33| <- CPU A12 CPU A9 -> |04 34| <- CPU A13 CPU A8 -> |05 35| <- CPU A14 CPU A7 -> |06 36| <> CPU D7 CPU A6 -> |07 37| <> CPU D6 CPU A5 -> |08 38| <> CPU D5 CPU A4 -> |09 39| <> CPU D4 CPU A3 -> |10 40| <> CPU D3 CPU A2 -> |11 41| <> CPU D2 CPU A1 -> |12 42| <> CPU D1 CPU A0 -> |13 43| <> CPU D0 CPU R/W -> |14 44| <- /ROMSEL (/A
これはbuilderscon tokyo 2016の発表スライドです。 自己紹介 @kazunori_279 クラウドのデベロッパー・アドボケイト エバンジェリストみたいなお仕事 コミュニティ支援:GCPUG、bq_sushi、TensorFlow User Group etc 趣味のFPGA 2013年くらいからいじり始め FPGAエクストリーム・コンピューティング主宰:合計8回 これまでに書いたFPGA記事 はてなブックマークでバズった記事たち マイクロソフトはどうやってBingをFPGAで実装したか: 952 users ハード素人が32bit CPUをFPGAで自作して動かすまで読んだ本のまとめ: 576 users 文字通り「ネットワークがコンピューター」な金融HFTでのFPGAの使われ方: 517 users JP Morgan Chaseがデリバティブ専用スパコンをFPGAで
「量子理論の副産物に過ぎなかった」──東芝の「量子コンピュータより速いアルゴリズム」誕生秘話:「量子コンピュータとは何か」を問う“新たな壁”(1/5 ページ) 今、量子コンピュータの一種である「量子アニーリングマシン」で高速に解けるとされる「組合せ最適化問題」をより速く・大規模に解くべく、各社がしのぎを削っている。 米Googleと米航空宇宙局(NASA)が2015年に「従来のコンピュータより1億倍速い」と評した量子アニーラ「D-Wave」を作るカナダD-Wave Systems、量子アニーリングを模したアルゴリズムをデジタル回路上に再現する富士通と日立、光を用いて解く「コヒーレント・イジングマシン」を作るNTTの研究グループなどだ。IBMなどが作る「量子ゲート方式」の量子コンピュータを用いた組合せ最適化計算の研究も盛んだ。 各社が組合せ最適化計算に取り組むのは、これを高速に解けると交通渋
男子たるもの一度は自分でCPUを作ってみたいものだけど、ICでLEDをピカピカさせた程度の経験しかないハード素人な俺だったので、CPUを自作してる東大生などを遠くから見て憧れてるだけだった。しかしおよそ一年前のこと、「MIPSなんて簡単に作れますよ!」とKさん(←FPGAでLispマシンを自作するような人)に言われて、お、おぅ。。そりゃKさんはそうでしょうよ。。あれ、もしかして俺にもできるかな。。? と思った。この一言がなければ32bitのCPUを自作しようなんて考えなかっただろう。 それから一年ちょい、とくに今年の正月休みやFPGA温泉でがっつりがんばって、なんとかMIPS Iサブセットの自作CPUが動いた。これはフィボナッチを計算してるところ。 ちなみに、これはこんな感じのフィボナッチのコードをCで書いて、 void main() { int i, *r = (int *)0x7f00
東大の情報科学科では3年の秋学期にCPU実験という、自分たちでCPU、コンパイラ、シミュレーターを作ってレイトレーシングを動かすことが単位要件の名物実験があります。僕らの班では12月初旬に単位要件を満たすCPUは出来ていたので、2/20にあった成果報告会までの間にIwashi班という自作CPU上でlinuxを動かすことを目標とした余興班を作ってこのエントリのタイトルにあるような結果に終わったのでその報告をしたいと思います。 コンテキストスイッチしている画像: 目次 目次 対象とする読者 自己紹介 できたこととできなかったこと 技術的な詳細 ISA よかったところ 悪かったところ 結論 ステート管理 Floating point UART 自作OS/Shellの仕様 動機 やること 実装方針 増えるレジスタ 増える命令 MMUの挙動 タイマ割り込みの挙動 iretの挙動 Kernelの実装
この記事はLinux Advent Calendar 2016 9日目の記事です。 遅刻してしまい申し訳ございません。。。 とある事情があって1ヶ月半ほど独自NICのLinux向けのネットワークドライバを開発していた。 今回はARM用のデバイスドライバを開発した。NICはXilinx社のFPGAであるZYBOを用いて開発した。 まだ十分に実用段階というわけではないが、ひとまず独自NIC経由でのpingやiperfが通ったので、後学のために知見を残しておきたい(誰得だ、という感じだが)。 ソースコードはまだ公開されていないが、そう遠くないうちに公開する予定(たぶん)。 はじめに Linuxのデバイスには キャラクタデバイス - バイト単位のデータ通信 (e.g. シリアルポート) ブロックデバイス - ブロック単位のデータ通信 (e.g. ディスク) ネットワークデバイス の3種類がある。ネ
僕の学科では伝統的に3年の後期に半年かけてCPU実験というものをおこなう。 班で自作のアーキテクチャを設計・実装し、FPGA基板上でMinCaml(OCamlのサブセット)でかかれた課題用レイトレーシングプログラムが動けば単位がもらえるというものである。 レイトレ完動後には、その高速化にはげむもよし、余興としてゲームをつくるもよしで、自作CPU上で色々あそんだりする。 今年は有志で班を結成し、自作CPU上でxv6というOSを動かした。 僕はその班にCコンパイラ係として参加したので、そのことについてかく。 あと、OS移植班全体の成果についても触れる。 わりと長くなってしまったので、結局なにができたんだっていう人は、とりあえず先にこっちに飛んでほしい。 動機 期間は4ヶ月程度、配布されたFPGA基板のうえで動かしたいという制約のもとで移植するOSはxv6を選択した。 このOSはシンプルであるが
ここのところ重度のFPGA中二病にかかってしまい、冬休み中もDE0ざんまいな日々。気になっていた金融のHFT(high frequency trading:大手投資銀行等がμ秒単位の超高速で株式等を売り買いしてる恐ろしい市場)におけるFPGA利用状況について、HFT Reviewにこってりしたレポート(HFT業界のベンダー各社にインタビューしたもの)が載っていたので、勢い余って面白かった部分を超訳してしまった。 元ネタはこちら: FPGA & Hardware Accelerated Trading, Part One - Who, What, Where and Why? FPGA & Hardware Accelerated Trading, Part Two - Alternative Approaches FPGA & Hardware Accelerated Trading, P
もう終わりそうですけど、4月ですしこれから組み込み業界へ向かうかたへ自分がこの本よかったなーって思ったのをいくつかピックアップしてみます。ただ、一言に『組み込み』と言っても幅広くて分野によって求められる知識は結構変わってくると思いますが、ベースは一緒だろうと思います。 ちなみに自分はCPUはRL78、Cortex-M0、Cortex-M3、Rx、SH、Cortex-A9、FPGAは最大でも7000LUT程度のレンジのハードウェア設計をやってきました。今はZynqや大規模FPGA開発に携わりたいと思っています。 以下に挙げていきますが、オススメがあれば是非教えていただきたいです。 ※順番に意味はありません。 CPUの創りかた CPUの創りかた 作者: 渡波郁出版社/メーカー: 毎日コミュニケーションズ発売日: 2003/10/01メディア: 単行本(ソフトカバー)購入: 35人 クリック:
こんにちは、スマートニュースの徳永です。深層学習業界はGANだとか深層強化学習だとかで盛り上がっていますが、今日は淡々と、ニューラルネットワークの量子化の話をします。 TL;DR パラメータだけを量子化するのであれば、ほぼ精度を落とさずに、パラメータのデータ容量は1/16程度にまで削減できる パラメータ、アクティベーション、勾配のすべてを量子化し、推論だけでなく学習までもビット演算だけで実現する研究が進んできている 現在は深層学習 = GPU必須というぐらいの勢いがあるけど、量子化の研究が進むと、今後はどうなるかわからないよ はじめに 情報理論における量子化とは、アナログな量を離散的な値で近似的に表現することを指しますが、本稿における量子化は厳密に言うとちょっと意味が違い、十分な(=32bitもしくは16bit)精度で表現されていた量を、ずっと少ないビット数で表現することを言います。 ニュ
各ボードの詳細はこちらをご参照下さい。 この他にも、スイッチとLEDがそれぞれ4個以上搭載されているFPGAボードなら、ほぼ確実に動くと思われます。 いろいろな方への紹介文 本書の主な想定読者は、電気や回路や CPU について何も知らない方です。 しかし回路に詳しい方々からも、「こんな考え方があるのか!」という驚きの声を多数いただいております。 筆者として、本当に嬉しい限りです。 様々なバックグラウンドの方に楽しんでいただくために、以下に10通りの紹介文をひねり出したので、興味のある項目に目を通してもらえると幸いです。 電気や回路を全然知らない方へ プログラマーの方へ 情報学科の学生さんへ 論理回路を教えておられる先生方へ FPGAに挫折した経験のある方へ ハードウェア記述言語に詳しい方へ アナログ回路に詳しい方へ 物理に詳しい方へ 数学に詳しい方へ 人間の欲望を重視する方へ 電気や回路を
ソフトウェアエンジニアがFPGA(field-programmable gate array)を使うハードルがさらに下がってきている。クラウドサービスでFPGAを活用できたり、Pythonで記述したニューラルネットワークをFPGAに高位合成できる研究成果が出てきたりしているのだ。 ソフトウェア開発者の立場でFPGAに取り組むイベント「FPGAエクストリーム・コンピューティング」を主宰する佐藤一憲氏、FPGAの高位合成によるディープラーニングについて研究している東京工業大学の中原啓貴氏(中原研究室)、そしてFPGAベンダーであるザイリンクスの神保直弘氏が、急激に常識が変わりつつあるFPGAの動向を語り合った。 本稿では座談会の中から、ソフトウェアエンジニアにFPGAや高位合成が求められる現状、そして、今後どのようなツールを使うべきか、ソフトウェアエンジニアがFPGAに取り組む際の課題などにつ
巷ではIntel, AMD, ARMを巻き込んだCPUのバグ "Meltdown", "Spectre" が話題です。 これらの問題、内容を読み進めていくと、コンピュータアーキテクチャにおける重要な要素を多く含んでいることが分かって来ました。 つまり、このCPUのセキュリティ問題を読み解いていくと現代のマイクロプロセッサが持つ、性能向上のためのあくなき機能追加の一端が見えてくるのではないかと思い、Google, Intelの文献を読み解いてみることにしました。 が、私はセキュリティの専門家ではありませんし、過去にデスクトップPC向けのような大規模なCPU設計に参加したこともありません。 あくまでコンピュータアーキテクチャに比較的近い場所にいる人間として、この問題の本質はどこにあるのか、可能な限り読み解いていき、現代のマイクロプロセッサが持つ高性能かつ高機能な内部実装について解き明かしていき
年末ですね。年末に技術っぽいことを書いても誰も見ていないので、どうでもいいことを書こうと思います。 皆さん技術書は好きですか?好きですよね。読みもしないのに技術書典なんかに大挙して押しかけて、結局積読が増えていく。積んでいるとなんか落ち着くのかもしれません。 私は現在ハードウェア関連の技術者として働いているわけですが、短い人生の中で読んだ技術書の中で、本当に私の人生を変えてしまった技術書を思い出しながら紹介してみたいと思います。 あらかじめ断っておきますが、「名著」や「良い本」を紹介するのではなく、あくまでも私の人生を変えた本です。逆にいうと、あまり名著は出てきません。名著の紹介はすでにいろんなところでやられているので、そちらを見ていただければ。 1. 図解で分かるPCアーキテクチャのすべて(初版) 〈最新〉図解でわかる PCアーキテクチャのすべて 作者:小泉 修出版社/メーカー: 日本実
IoT(モノのインターネット)市場が拡大する中で、エッジ側の機器制御で重要な役割を果たすことが期待されているリアルタイムOS(RTOS)について解説する本連載。第50回は、イタリア発のRTOS「BeRTOS」を紹介する。
日本電信電話株式会社(本社:東京都千代田区、代表取締役社長:島田 明、以下「NTT」)、および国立大学法人北海道大学(北海道札幌市、総長:寳金 清博、以下「北海道大学」)は共同で、中性子のもつエネルギーごとの半導体ソフトエラー※1発生率※2を今までは測定がされていなかった10 meV~1 MeVの低エネルギー領域において、"連続的な"データとして実測することに成功し、その全貌を世界で初めて明らかにしました(図1)。 現在の社会インフラを支える電子機器においては、宇宙線(太陽フレアや銀河から飛来する放射線)に起因する誤動作であるソフトエラーの対策が不可欠です。中性子エネルギーごとのソフトエラー発生率の解明は、その対策を行う上で最も重要なものです。今後は、この結果を活用しソフトエラー対策をさらに進展させることで、より安全・安心な社会インフラの実現が可能となります。 本成果は米国東部時間2023
この記事はFPGA開発日記の祝2,000記事到達の記念に書いているものです。 普段の記事と比べて非常にエモい内容となっております。 FPGA開発日記を始めたのが2015年の1月4日。それからおよそ5年と10か月で2,000記事に到達した。 計算してみると2,115日での2,000記事達成となっていた。我ながらよく頑張った。 ブログを書き始めてもう5年以上経った。5年も経てば周りの状況も変わるし、生活環境も変わる。 私も歳を取り、決して若いとは言えない年齢になった。昔のように徹夜で勉強とか実装はできなくなったし、肩は凝るし集中力は続かない。夜になるとすごく眠たくなる。仕事が終わったらすぐ眠たくなってしまい、趣味やブログを執筆する時間を取るのがとても難しくなってきた。 私が年を取れば取るほど、若い実装力のある、優秀な人たちが参入してきて、私の何倍ものスピードで成果を出していく。 私が持っている
モチベーション なぜRustを選んだか? 私はQEMUは「アーキテクチャエミュレーション界のLLVM」だと思っている QEMUが高速な理由:TCG Binary Translation ゲスト命令(RISC-V) → TCG → ホスト命令(x86)の処理をRustで作ろう RISC-Vの命令をフェッチしてデコードする RISC-Vの命令をTCGに変換する TCGをx86に変換する 実装結果 Binary Translation実行を高速化するための様々なテクニック BasicBlock分まで複数命令をまとめて変換 TCG Block Chainingの実装 評価結果 TB Lookup and Jumpの実装 評価結果 まだ完成していないところ 一部の最適化はまだ未実装となっている ゲストアーキテクチャがx86のみとなっている。TCGによる複数プラットフォーム対応として、まずは環境のそろ
スーパーコンピューター並のシステムすら構築できる強力なハードとソフトオープンソースで開発、誰でも99ドル(約7700円)から利用できるようにしよう、というプロジェクトが「Parallella」です。 Parallella: A Supercomputer For Everyone by Adapteva — Kickstarter 「今、私たちは1つのプロセッサーが1つのタスクを行うというシングルスレッドコンピューターを使っています。それはそれですごいことなのですが、処理頻度の限界やメモリーのボトルネックという問題に直面し、近年パフォーマンスの改善は望まれているレベルに達していません。この状況が続けば、過去30年間我々が経験してきた、毎年毎年コンピューターのパフォーマンスが向上するという状況は終わります。そして、その問題を解決するための答えがパラレルコンピューティングです」と語るのがこのプ
今年のCPU実験では、有志からなる我らがX班が、おそらくCPU実験史上初である自作CPUへのOS (xv6) 移植に成功しました。コア係とコンパイラ係の面々がそれぞれまとめ記事を書いていたので、OS係から見たOS移植のまとめも書こうかなと思います。こんなことしてましたってことが伝わればいいなと思います。 この記事を読む後輩やらなんやらがいたら、ぜひ僕らがやったようなことはさっさとクリアしちゃって、さらにさらに面白いことをする踏み台にしていってほしいですね。 どなたが読んでもある程度概要が伝わるよう、まずCPU実験とは何かということをさらっと書いた後、実際にxv6を移植するにあたってやったことをまとめたいと思います。 CPU実験とは CPU実験は僕の学科(理学部情報科学科)で3年冬に行われる、半年間にわたる学科名物演習です。 最初の週で4~5人程度の班に分けられた後、それぞれの班でオリジナル
私はFPGAの専門ではありませんが、数年前から仕事でFPGA開発の依頼を受けるようになりました。周りに経験者もほとんどおらず試行錯誤しながらなんとか幾つかの依頼をこなしてきましたので、超初心者目線でFPGAの仕組みと開発方法に関してまとめてみます。 FPGAとは 集積回路の中のFPGA FPGAの仕組み FPGAの開発 FPGAの開発環境 論理回路の記述 論理合成、ピン割り付け、配置配線、ダウンロード おわりに FPGAとは FPGAとはField Plogrammable Gate Arayの略で、現場でプログラム可能な論理回路のことです。 簡単な論理回路であれば半田ごてと汎用ICを使って開発をすることもできますが、 大規模になると難しくなりますし、 一度作った回路を修正するのはとても面倒です。FPGAであれば何度でも書き換え可能で、ハードウェアを修正する必要もありません。 集積回路の中
~重要イベント一覧 (2019/06/22から)~ 06/22 作成開始 06/29 32bit加算だけ実行する状態機械が完成 07/17 UARTの送信機を作る 07/18 8bit加算ができるようになる 07/19 ModRM, SIB周りのアドレシングを作り込む 07/20 加算命令がIntel x86の仕様を完全に再現 07/25 加算以外の命令を、一気に48個作る 08/13 Hello Worldが動いた (writeシステムコールの作成) 08/21 自作CPU上で自作OSが動いた 08/27 自作CPU上の自作OSにシェルを実装 09/21 自作CPU上の自作OS上でテトリスが動いた
選定作業にはAOMが公開しているソフトウェアエンコーダaomを使用し、改造によってツールを削減したときの映像品質を比較しました。 映像品質は一般的にビットレートと客観/主観画質のバランスで表されます。 客観画質とは計算によって数値化した画質のことで、代表的な手法としてはPSNRやSSIMがあります。 主観画質とは人の目で映像を評価した画質のことです。 今回は、客観画質としてPSNRを用いた指標(RD性能)を用い、映像品質を比較しました。 PSNRには"30dBを下回ると低品質である"といった基準はありますが、人の目で見たときの評価と必ずしも一致するわけではありません。 そこで、主観画質の評価も並行して実施し、多角的に映像品質低下を防止しました。 選定結果 まず、Superblockサイズを64X64と128X128とで比較しました。 その結果、テストケースのうち約75%でRD性能に変化がな
さくらインターネット、福岡大学と協力し 世界最速クラスのハードウェア 時刻同期(NTP)サーバーを自社開発 ~FPGAベースの公開NTPサービスをトライアル提供~ インターネットインフラサービスを提供するさくらインターネット株式会社(本社:大阪府大阪市、代表取締役社長:田中 邦裕)は、私立総合大学の福岡大学と協力し、単体で約10ギガビット/秒(約1300万リクエスト/秒)の高負荷に耐え、Stratum1※1 NTP(Network Time Protocol) サーバーとして働く専用デジタル回路を設計から開発いたしました。また開発サーバーにて、FPGA※2上で動作させて提供する実験を開始しております。 当社データセンターで稼働する当開発サーバーと時刻表示 NTPとは、スマートフォン等を含む、ネットワークに接続される機器において、機器が持つ時計を正しい時刻へ同期するための通信プロトコルです。
LinkedInの記事をめぐっているうちに見つけた、マイクロアーキテクチャに関する面白い事例。 CPUのマイクロアーキテクチャのさらに奥深くまで理解が必要な問題を解決するために、どのようなツールをつかってどのように解決したかの話。 netflixtechblog.com Netflix内でのワークロード最適化のため、AWSのインスタンスサイズを移行(16 vCPUから48 vCPU)し、CPUがボトルネックとなるワークロードの性能向上を図った。 このインスタンスの移行により、性能をほぼ直線的に増加させることを想定し、スループットがおよそ3倍になると予想した。 しかし、結果としてこの移行で想定する性能は達成できなかった。 https://netflixtechblog.com/seeing-through-hardware-counters-a-journey-to-threefold-pe
ファミコン(NES)のエミュレータを書いてみたいとずっと思っていたので、書いてみることにしました。 そう思っている人は少なからず居るようで、先日もPHPで書いたというエントリが出たようです。 とりあえず先人たちがやっているように僕もSuper Mario Brothers(SMB.)を動かすのを目標にしました。 やったことがあるファミコンのゲームはSMB.しかないのでぴったりそうです。 (僕は1998年生まれの20歳で、実はファミコンの実機を触ったことが無い) SMB.を動かすまで SMB.を動かすまでの過程を解説していきます。 基本的に既存の文献やコードを読みつつ、コードに落としていきました。 1. Hello, World! を動かす Hello, World!を表示するだけのROMを動かしましょう。 ROMは以下のページから手に入ります。 NES研究室 - サンプル Hello, W
金融系でFPGAというとHFTへの応用が知られてるけど、この事例はリアルタイムトレードの話ではない。金融業務で必要とされるバッチ処理やHPC(High Performance Computing)でもFPGAが本格的に使われ始めてるという話だ。 元ネタは、2011年にJP Morgan Chaseの人がスタンフォード大学で講演した内容。このビデオを見ていたらとっっっても面白かったので、 #fpgax 第3回で使う資料として要点を訳し、俺のコメントや補足を追加してみた。 http://www.youtube.com/watch?v=9NqX1ETADn0 (スライドはこちら) なお、FPGAも金融も素人なので、勘違いや誤訳があるかもしれない。FPGAとは何かよく知らない人はこちらをどうぞ。 リーマン・ショック対策のスパコン開発 JP Morgan Chaseは、社債やモーゲージ(不動産を担保
はたから見てると、FPGAとArduinoとRasberry PIって、なんか小さくてデバイス挿して使ってて似たもののように見えるかもしれません。 そんな中、どこが違うの?って思ってる人もいるかと思ったので、それぞれの違いと、そしてそこから得られる技術者としての知識をまとめてみます。 まあ、得られる知識として「それぞれのデバイスの使い方と周辺環境」ってのはありますが、それは当然として。「それぞれのデバイスの使い方と周辺環境」を得るメリットがわかる比較としてまとめたいと思います。 根底は「なんで最近FPGAをやってるか」っていうことの説明なので、そういうバイアスがあると思ってください。 FPGAというのはチップの種類なので、実際にはDE0などのFPGA評価ボードとの比較ですが。中でもDE0-nanoは大きさや価格を考えると、豪華なArduinoくらいの位置づけとして出してきたようにも見えます
hikaliumの独断と偏見で、積読は除いている。最近も結構新しい本が色々出ているので、それもいいかもしれないが、ある程度評価の定まった本を探したい場合に参考になれば。 ちなみに、hikaliumがセキュキャンでCPU自作を教えていたときのコードはここにある。参考にならないかもしれないが、おまけにどうぞ。 github.com ディジタル回路設計とコンピュータアーキテクチャ 無印(MIPS版) ARM版 RISC-V版 ハードウエア記述言語で実際にCPUをつくりながら、各アーキテクチャについても学べる良書。 MIPS版が広く知られているが、ARM版、RISC-V版も登場している。無印版はよくある技術書サイズだが、ARMとRISC-V版は大型本なので、そこらへんの好みとかも勘案するとよいかもしれない。 CPUの創り方 Amazon 表紙がメイドさんだが、侮ることなかれ。(と私は中学生の時にク
ここまでのあらすじ 我々の住むソフトウェア業界は、SI、サービス・パッケージ、ユーザー企業という大小3つの大陸にわかれ、時々いさかいがありながらも平和に暮らしていた。 そして、我々の住む世界とは別に、同規模の技術者が暮らす、組み込み業界という世界の存在も知られていた。 組み込み業界は、存在はすることは確かなのだが技術者の姿は見えず、そのプロダクトの存在も、わかるものにしかわからないのであった。 我々は、組み込み業界と交信できる唯一の手段、C言語を使って、その世界の住人と交信するしかなかった。 しかしあるとき、FPGAという次元ホールをみつけたワカモノ達が、組み込み業界に迷い込んでしまう。ワカモノ達の前に立ちはだかる屈強な組み込み技術者。彼らの前にワカモノたちは、あるものは倒され、あるものは捕らわれ、そして、命からがら表の世界に逃れてきたワカモノも「べり・・・ろ・・ぐ・・・」というナゾの言葉
「パーソナル・コンピュータ」の概念を提唱したとして知られるアラン・ケイ氏に会う機会を得た。パソコンの未来を語る同氏の熱弁ぶりは健在だ。ムーアの法則に従い、半導体技術が3万倍に進歩したにも関わらず、ユーザーの実感としてコンピュータ・システムの性能向上はわずか50倍にすぎないと憂える。コンピュータ・アーキテクチャの進むべき方向性について、同氏の鋭い分析と将来の夢を3回のインタビュー連載でお届けする。 (聞き手=ITpro発行人 浅見直樹,写真=栗原克己) ―― コンピュータ技術の進歩にはめざましいものがありますが。 果たして、そうだろうか。必ずしも進歩していない部分もある。例えば、メモリのデータ転送速度はさほど高速化していない。また、マイクロプロセサも依然としてシングル・プロセサのアーキテクチャから脱却していない。これは、技術的な問題というよりも、コンピュータ・ベンダーが大きな変化を望んで
Image Credit: Bhupinder Nayyar/Flickr AppleやMicrosoftのような大手テクノロジー企業は、モバイル機器に搭載されたパーソナルデジタルアシスタント機能を多くの人に提供してきた。そのおかげでユーザはデバイスに話しかけるだけでアラームをかけたり、質問の回答を得たりすることができるようになった。現在、他の企業も新しいオープンソースのソフトウェアを用いて、それぞれ独自のバージョンのアシスタント機能を作成することが可能になった。そのソフトウェアは、Sirius。もちろん、AppleのSiriをもじったものだ。 今日、トルコで開かれている「プログラム言語およびOS向けアーキテクチャサポートに関する国際会議」にて、ミシガン大学の研究者らがSiriusについてのプレゼンテーションを行った(編集部注:原文掲載3月14日)。時を同じくした今朝、SiriusはPro
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く