O HAI THIS BLOG PURPZIEZ 2 B UZED AZ MAH PLESIOUS MEM. :)

2008/06/23

BuggyBinBlob.karma--;

#vhdl@freenode.netにて。
[At #vhdl@freenode.net.]
06/23 00:02:31 Manny
hi
06/23 00:02:42 Manny
can I declare entity foo in file bar.vhd?
06/23 00:03:21 hiyuh
yup
06/23 00:03:35 Manny
I have a working architecture for an un-delayed 4:1 multiplexer, and
I want to convert it to a delayed 4:1-multiplexer (wrt data lines),
but undelayed (wrt address line), which I want to implement by a
staged layout like:
06/23 00:04:20 Manny
architecture arch1 of mux is ... end arch1; arch2 of mux is ... 4
delay stages, MUX1: mux port map (output of delay, ...); end arch2;
06/23 00:04:49 Manny
I wonder whether it is possible to configure the mux used inside
the mux arch2 to use the mux arch1
06/23 00:08:00 Manny
ok, I figured how how the lattter should work
06/23 00:09:27 Manny
hiyuh: maybe I could show you some code - maybe in private?
06/23 00:10:08 Manny
it's really short and simple :)
06/23 00:11:39 hiyuh
hmm, you mean pm? why?
06/23 00:13:12 Manny
http://rifers.org/paste/vhdlforyou/show/7547
06/23 00:14:17 Manny
hiyuh: my VHDL compiler bails (I'm absolving an online remote hands-on
course at university)
06/23 00:15:34 Manny
hiyuh: here is the compiler output:
http://rifers.org/paste/vhdlforyou2/show/7548
06/23 00:15:58 Manny
it even tells me that it does not know about std_logic_vector -
this is odd...
06/23 00:18:13 `fred`
no it is not
06/23 00:19:46 Manny
`fred`: what am I doing wrong besides a few syntax errors I just
corrected?
06/23 00:20:51 `fred`
you have to repeat the use statements for each entity
06/23 00:21:27 Manny
`fred`: thanks a million! :)
06/23 00:22:22 `fred`
second point: learn how to use (others => '...') instead of writing
"..........."
06/23 00:30:48 Manny
`fred`: maybe you could give me a URL, or a quick example? I'd
really like to learn this :) I just peeked at the VHDL cookbook,
and it seems to use a few constructs but I don't grasp them.
06/23 00:31:49 `fred`
when others => Y <= "XXXXXXXXXXXXXXXX"; <=> when others => Y <=
(others => 'X);
06/23 00:32:10 `fred`
except that it is independent from the size of the vector
06/23 00:34:00 Manny
maybe I lack some decent portion of knowledge of VHDL internals. "when
others => Y <= (others => 'X);" seems to give me a syntax error
06/23 00:34:20 `fred`
one ' is missing
06/23 00:34:23 `fred`
'X'
06/23 00:34:47 hiyuh
http://pastebin.sk/pl/7121/
06/23 00:34:50 Manny
so 'X' is "expanded" to fit the LHS. neat.
06/23 00:35:44 Manny
hiyuh: thanks for your comments! Actually, I figured out all of
these myself :))
06/23 00:35:54 hiyuh
heh
06/23 00:36:00 `fred`
Manny: the full notation is e.g. ( 0 => '0', 1 => '1', others =>
'Z'), it should be describe in the aggregate chapter of your book
06/23 00:37:02 Manny
however, using arch1 inside arch2 still does not seem to work. It
seems to nest arch2 mux components inside my arch2 component, which
is of course not useful (infinite recursion)
06/23 00:37:21 Manny
let me show you my testbench, maybe the configuration statements
are conflicting
06/23 00:39:04 Manny
that's my test bench: http://rifers.org/paste/vhdlforyou/show/7549
06/23 00:42:10 Manny
also let me re-paste the mux file:
06/23 00:42:46 Manny
http://rifers.org/paste/vhdlforyou/show/7550
06/23 00:43:37 hiyuh
hmm
06/23 00:44:49 hiyuh
why on the earch should we comment 'in' and 'out' even if there is
syntactic 'in' and 'out'?
06/23 00:45:01 *
hiyuh zomgs
06/23 00:48:04 Manny
hiyuh: I do not like the in/out syntax of VHDL with respect to
that. The in/out looks rather "buried" inside the syntactical
structure if you specify an array of parameters
06/23 00:49:05 Manny
as an electrical engineerer, in/out is the MAIN aspect of a system :D
06/23 00:49:09 Manny
at least of a concentrated system
06/23 00:51:21 hiyuh
array of parameters? wth is it?
06/23 00:51:24 hiyuh
`fred`: btw, I found really buggy optimize option in ISE 9.2i/10.1
which breaks many core generator's craps. are you survivin' w/ v5? :p
06/23 00:52:12 `fred`
hiyuh: I've got the strangest bug with 10.1, it was optimising away
most of my microblaze without any reason
06/23 00:53:24 hiyuh
yup, you enabled Global Optimization at Map?
06/23 00:53:29 hiyuh
I'm really sure it will do byggy optimization.
06/23 00:53:43 Manny
hiyuh: you may also call it tuple. You know, A, B, C, D: in type ...;
06/23 00:54:14 Manny
hiyuh: however, I still do not understand what I am doing wrong
06/23 00:54:17 `fred`
hiyuh: only when the design was no longer fitting, and in this case
it was not helping :/
06/23 00:56:13 hiyuh
Manny: I'm saying about comment manner, not vhdl specific. and it's
unrelated point about what you're stucking.
06/23 00:58:42 Manny
maybe the "for mux2: mux use entity work.mux(arch2); end for;"
statement affects all mux building blocks, and not just the outer one?
06/23 01:00:03 hiyuh
`fred`: I was investigating ISE's buggy optimization like many trying
default w/ 1 option chnaging. at least, Global Optimization at Map
will break post-PAR model, I figured out.
06/23 01:01:31 hiyuh
and Optimize Instantiated Primitives at Synthesize will optimize
away some top entity's port. it vomits error at Translate.
06/23 01:03:00 hiyuh
Manny: if you're not sure what/how configuration works, don't use it.
06/23 01:03:57 hiyuh
just analyze and elaborate 1-to-1 entity-architecture.
06/23 01:04:06 `fred`
hiyuh: even with sp1 installed ?
06/23 01:04:20 hiyuh
you mean 10.1 sp1?
06/23 01:04:22 Manny
hiyuh: so I am mis-using the configuration?
06/23 01:04:25 `fred`
yes
06/23 01:04:47 Manny
hiyuh: I can of course read into it, if you tell me that what I am
trying to do is definitly possible with the basic approach :)
06/23 01:05:11 hiyuh
`fred`: release 10.1.01 (10.1 + sp1, IIRC) is still buggy. :P
06/23 01:06:08 Manny
again, the idea is: Use mux with architecture arch2. Inside this mux,
use another mux with architecture arch1. Naively concluding from what
I have seen, I AM actually using a 1:1 entity-architecture mapping.
06/23 01:06:16 `fred`
hiyuh: well, I'm anyway not really surprised
06/23 01:06:40 hiyuh
yup, we know ISE is always buggy. :p
06/23 01:07:43 hiyuh
Manny: 1-to-1 entity-architecture doesn't need any explicit
configuration.
06/23 01:07:58 Manny
hiyuh: you mean like "each entity just has one architecture"?
06/23 01:09:12 Manny
hiyuh: the thing is, for non-nested layouts all my configurations
work fine. Now, I am trying to nest an entity of one architecture
into another architecture of the same entity, and the compiler bails.
06/23 01:09:35 hiyuh
Manny: yup, until you realized configuration magic.
06/23 01:10:52 Manny
hiyuh: I am also not sure whether I am seeing a compiler issue, or
whether my configurations are wrong. If you can confirm me latter
[maybe even giving hints about the right configuration], I will
continue the approach :)
06/23 01:11:33 hiyuh
if you use sane vhdl simulator/synthesizer, valid configuration does
work even if design has nested entity.
06/23 01:12:53 Manny
ok, thanks for all your efforts. It's great to have such a kind and
quick support for VHDL :)

何時もムカつく事だけど、buggyなbin blobはどうにかならんかね。「releaseダルい」の件では、少し壊れている方が可愛げがあるって言ったけど、それは自分で直せる可能性とか遊びドコロがあるからって意味であって、ぶっ壊れているから面白いって意味じゃない。オープンソースキチガイってわけじゃないけど、仕事で作ってるならもう少しテストしてからリリースしたらどうなんだ?もう手前でwork around探すのは疲れたよ、パトラッシュ。 :P
[Everytime buggy bin blob piss me off. I said "I kinda prefer to play recent one w/ itty-bitty bugz" though, I meant it has a part of what I can play w/ it in the source code, not unfixable buggy behavior. So, I'm not open source nazi. You, who earns from your code, should be responsible w/ it. I'm really tired to find t3h work around for myself. :P]

2008/06/13

OWB->Doduo[r262] += GCC-4.3.1-patch;

WebKit GTK/QtはGentooのofficial treeに入ったし、NetSurfGSoCな感じでメジャーになってきたみたいなので、さらにマイナーなOWBをモニョる。 :P
[WebKit GTK/Qt is now in official portage tree, Netsurf devs are exciting for GSoC. So to be minor oriented, I'm playing t3h third one, OWB. :P]

公開されているtrunkのgcc-4.3.1でのcompilation fixを蝶テキトーにでっち上げてdev-MLに投げたら、スポンサー(?)のPLEYOのCTOっぽい人が「Doduoっていう先っぽが別にあるから、そいつのを直してくれ」と別口でメールしてきた。で、DoDuoをco出来る様にしてもらったので、大したfixではないけど、直した。 :)
[I kinda create compilation fix patch for publically accessible trunk w/ gcc-4.3.1, and sent dev-ML. Then, the sponsor, PLEYO's CTO mailed me about fixing tip of OWB, AKA Doduo is now private beta test. So I did. :)]

実は、OWBは以前試した事があって、trunk r97はマルチバイト文字が表示出来たけど、endianの問題でGentoo/PPC上では面白い事になっていた。 :D
[I was playing OWB ago. At trunk r97, it can display mutibyte fonts, but color was FUBAR on Gentoo/PPC, b/c endian depend internal color data structure. :D]


trunk r255は色の問題は直ったけど、フォント関連にかなり手を入れたらしくて見事に豆腐になる。 :DDD
[At trunk r255, color problem was fixed. But it was reorged WRT fonts related code, so "ALL YOUR FONTS ARE BELONGS TO TOFU." :DDD]


Doduo r262でも豆腐は健在、ticketを作ったので直してくれるかもしれんし、なんかモニョモニョしたら直りそうな気もする。
[At Doduo r262, fonts are still FUBAR. So I filed a ticket for this issue.]


OWBはWebKitベースなCE向けのモノらしく、WIMPなUIが無いみたいなので、SDLをつかった時のfixed sizeなwindowになっている部分をモニョれば(DoduoにはGTKを使う様なオプションがあるみたい)、タイル型WMと相性が良いかもしれないな!!1 :9
[OWB is WebKit-based one for CE. So there is no WIMP UI, it seems. If SDL's fixed size window was improved to be ICCCM compliant (Doduo has option to build w/ GTK, it seems). It would be great combination w/ tiling WM like wmii!!1 :9]

あ、まともに動作している画像がないのはマズいので、記念撮影。 :)
[Oh, wait. All pic are FUBAR-ed OWB, it's not good promotion. So here is good one. :)]

2008/06/09

disableRelease("sys-libs/glibc");

土日連続で出勤。しかし、ブツは牛歩の進み。
まー、シミュレーションに一晩かかるモノをやっているん訳だし、仕方ないと言えば仕方ないけどな! :p
[KK, I have no holiday and have very little progress. B/c t3h simulation takes loooong time such as 1 day per 1 test case. UMAZOMG! :p]

で、テストベンチをムニャヘニャなおして、ブツのシミュレーションを実行して放置プレイ。
おうちに帰って、#-bugsで遊ぶ。
[Well, I fix0r some test benches and set it running at office, then I was slacking at home w/ #-bugs guys.]
06/08 19:46:36 hiyuh
rofl @ http://home.planet.nl/~mourits/koelkast/
06/08 19:48:53 pchrist
hiyuh: for mips people like me, this is not fun :P
06/08 19:52:55 hiyuh
haha
06/08 19:57:45 bonsaikitten
hiyuh: I want one of those :)
06/08 19:58:55 pchrist
bonsaikitten: I'm pretty sure, that your datacenter home, can be
used as a fridge too :P
06/08 19:59:18 bonsaikitten
hehe
06/08 20:33:44 yngwin
hiyuh: nice one :)

06/08 20:40:56 Gatsby_
anyone here already installed sys-libs/glibc-2.8_p20080602?
06/08 20:41:40 Ke
anything interestin in it?
06/08 20:42:12 Gatsby_
not so far
06/08 20:42:48 *
Gatsby_ is only curios about any known bugs in it
06/08 20:44:16 hiyuh
!bug 225175
06/08 20:44:19 Willikins
hiyuh: Bug 225175; "sys-libs/glibc-2.8_p20080602 released";
Gentoo Linux | Ebuilds; RESO, FIXE; Arfrever.FTA.at.GMail.Com ->
toolchain@g.o; https://bugs.gentoo.org/225175
06/08 20:45:23 hiyuh
"Unfortunately there will be no more normal releases, ..." wtf?
06/08 20:45:58 Gatsby_
not a good idea at all.... ;(
06/08 20:46:09 Caster
?
06/08 20:48:12 bonsaikitten
Caster: who needs releases when you have git ...

06/09 00:32:55 whitehawk
what's new in the 2.8 glibc?
06/09 00:33:06 bonsaikitten
more shiny? ;)
例の「releaseすんのダルい」ってやつか?
MLを追ってみると、drepperも「tar玉作りなんて過去の遺物だ」とか言ってる。
で、vapierは「じゃあ、なんでCVSなんだよ?」とか言ってる。 :DDD
[Hmm, isn't it t3h "upstream slacks to release" problem? According to libc-alpha ML, drepper said "tarballs are a completely outdated concept", and then vapier replayed "yet glibc is still using cvs". :DDD]

relaseだろうとbetaだろうとalphaだろうと、メンテナ的にはtar玉をベースにしたいって事は理解出来るので、Gentooのkarmaの一つである「やっとglibcのコンパイルが終わったのに、もうrev bumpしてるじゃねーか!!1」ってのは変わらないので心配無用也。 :p
[But no matter if it was release/beta/alpha, I thought "based on tarball" would be welcomed for many distro-devs like vaiper said. So there is no change for a part of Gentoo's karma, "I just finished compiling glibc and now it says there is a new update available? Arrgh! It never ends!!" :p]