[Arm-netbook] ingenic jz4760 (600mhz, MIPS, X-Burst, 720p), FSF Hardware-Endorseable

Gordan Bobic gordan at bobich.net
Tue Jan 3 15:29:59 GMT 2012


 On Tue, 3 Jan 2012 14:44:43 +0000, lkcl luke <luke.leighton at gmail.com> 
 wrote:
> On Tue, Jan 3, 2012 at 2:24 PM, Gordan Bobic <gordan at bobich.net> 
> wrote:
>>  On Tue, 3 Jan 2012 13:55:04 +0000, lkcl luke 
>> <luke.leighton at gmail.com>
>>  wrote:
>>> On Tue, Jan 3, 2012 at 1:42 PM, Gordan Bobic <gordan at bobich.net>
>>> wrote:
>>>
>>>
>>>>  Can you elaborate how this VPU relates to the graphics subsystem 
>>>> on
>>>> the
>>>>  JZ4760?
>>>
>>>  there isn't one [a graphics subsystem].  ok, there is - it has 
>>> some
>>> 2D primitives.
>>>
>>>> What about the GPU itself? Is it little more than a dumb frame
>>>>  buffer and fully open?
>>>
>>>  it's fully open.  and has some basic 2D stuff.  but effectively 
>>> it's
>>> a framebuffer.
>>>
>>>> I guess what I really want to know is whether it
>>>>  is possible to maintain the standard separation of functionality,
>>>> e.g. a
>>>>  xorg driver with xv and gl acceleration? Is there such a driver
>>>> already?
>>>
>>>  don't know.  probably not.  the potential of the jz4760 seems to
>>> have
>>> completely escaped the free software community: it's not hard to 
>>> see
>>> why - the CPU's pretty much only exclusively available in the PRC.
>>
>>  OK, so we have a basic 2D frame buffer, and enough bandwidth to the
>>  video RAM to do things like xv and gl acceleration in software by 
>> using
>>  the VPU. Sounds to me like there is plenty of scope of writing the
>>  drivers that do the job in the traditional way. The app doesn't car 
>> if
>>  it's the GPU doing the number crunching or whether the driver palms 
>> it
>>  off on the vector math unit.
>
>  precisely.
>
>> As long as the standard APIs are exposed.
>>  But - do such drivers exist?
>
>  do a rethink - it's standard GNU/Linux software - you just recompile 
> it.

 So what you are really saying is, with the VPU approach, you don't 
 recompile the xorg driver, you recompile mplayer and ffmpeg. I get it. 
 That's actually really neat and easy and doesn't even require a driver 
 to be doing it all.

>>>  the opengl library... ahh, that's a hilarious one.  the tools to 
>>> do
>>> the X-Burst acceleration assembly-instructions are basically ... 
>>> get
>>> this: an awk script!  so it goes hunting through c code
>>> (pre-processor) and substitutes hard-coded assembly instructions in
>>> the place of core blocks of c code!
>>>
>>>  unbelievable :)
>>
>>  Umm... That is indeed quite "special".
>>
>>>  so, in this way, it's using the _standard_ mesa gl source code...
>>> just put through a pre-processor "wringer" which gives a little bit
>>> of
>>> extra oomph.  hilarious, but it works.
>>
>>
>>  So this awk script makes an "accelerated" driver by taking the mesa
>>  source and replaces parts the software GL renderer code matching a
>>  specific pattern with VPU specific assemblies?
>
>  yeah :)  a bit like... no, there's nothing like it really :)
>
>>  Wow. I wonder how many orders of magnitude more we'd get out of it 
>> with
>>  a proper compiler solution...
>
>  yeah.  gcc with proper VPU support, like sparc's LEON4, and 
> powerpc's
> altivec optimisation, would give the whole CPU a face-lift because 
> you
> could compile the entire codebase with it, not just a few sections.

 I haven't tried the latest GCCs, but it's vectorization has a long way 
 to go before it'll catch up with ICC. But with a decent compiler, it'd 
 be awesome.

>>  More to the point, I wonder how much else would benefit from this 
>> if it
>>  were a proper compiler target.
>>
>>>>  How does this compare to the Allwinner A10 on cost
>>>
>>>  well it has to be less.  if you look on taobao.com at qty 1 
>>> pricing
>>> you can find the CPU from random suppliers for 46RMB (£4.60) - but
>>> that's one-off quantities!
>>>
>>>  what that means is that we could actually buy all the parts
>>> *without*
>>> having to go to Ingenic, design the board *without* having to go to
>>> Ingenic (because they've already released all required 
>>> information).
>>
>>  How does the performance compare to, say, the Marvell Armada that 
>> runs
>>  at similar clock speeds?
>
>  abbbsolutely no idea.
>
>>  How much RAM can JZ4760 handle?
>
>  i honestly don't know!  probably 512mb.

 *very sad face*

>>  What interfaces does it have? USB? SATA? PCIe?
>
>  USB2.  err... that's it :)  you don't get much for a 130nm (0.13
> micron) completely china-home-grown CPU, gordan!

 In fairness, for a $5 CPU in 1-off quantities that still gets decent 
 power consumption despite being 130nm, USB2 is acceptable - after all, 
 you can hang anything off USB2. :)

>>>> and openness?
>>>
>>>  jz4760 beats the allwinner because allwinner haven't got 
>>> everything
>>> online already available and even if they did, there's still the 
>>> MALI
>>> 400MP to contend with.
>>
>>  Which begs the question of why we aren't doing that instead...
>
>  i'm speaking to richard about promoting it _as well_.  the reason 
> for
> "as well" is because the allwinner has a better chance for 
> mass-volume
> purposes.  it's future-proofed.

 So, where are the dev boards? ;)

 Once I get the RedSleeve (RHEL6 ARM port) released (working on the 
 graphics/logos now, the distro is otherwise ready - I have to replace 
 all the RH branding) I'd rather like to have a go at porting it to MIPS, 
 but that rather requires having some hardware capable of rebuilding the 
 distro in less than a year.

 Yes, I'm using Toshiba AC100s in my build farm, and they perform really 
 well, and at the moment they are easily the best price/performance ARM 
 machine you can get. But they are laptops.

 Using tablets as a build farm is potentially a step too far. :)

>>>>  What boards/devices are available with JZ4769?
>>>
>>>  4760 not 4769.
>>
>>  Sorry, fat finger error.
>>
>>>  you can get MIDs on taobao.com for 300RMB (£30).
>>
>>  Curious. The only thing I can find on ebay with this CPU in it is 
>> the
>>  "eisse" 7in tablet with 256MB of RAM.
>
>  search on taobao.com for jz4760 instead - you'll find dozens, if not
> hundreds.  it really is a "PRC-only" CPU, basically.

 And therein lies the rub - what's the kernel/driver support for these 
 like? Are GPL sources available? Can the version of Android they ship 
 with be made to be in something other than chinese? Tools and procedures 
 for flashing a different OS onto them?

>>  With such openness, this CPU deserves to be a massive success. So 
>> why
>>  are we all not voting with our feet? Why are there no products out 
>> there
>>  to enable us to vote with our feet? If there is a project that has 
>> been
>>  driving that point home for as long as I've been aware of it, it is 
>> this
>>  one - and yet the current focus seems to be on an SoC with a 
>> closed-spec
>>  GPU.
>>
>>  What am I missing?
>
>  it can't do 1080p (and it was only 600mhz not 1ghz).  so it was just
> too late.  if they had done the jz4760 even 1 year earlier, it would
> have been "fantastic!" - 600mhz and 720p video in what... 2007, that
> would have been, like... amazing, maaan!  with a $7 CPU, like... wow!
>
>  ... but it couldn't do 1080p, so nobody in the western world would 
> be
> the slightest bit interested, regardless of price.

 I'm not at all convinced. There are plenty of tablets sold in the west 
 (just look at the UK based GPL-violating Storage Options Scroll tablets) 
 that cannot get anywhere near 1080p decoding.

>  by the time they got to 1080p (only a few months ago), they had for
> some stupid reason added the vivante GC600.
>
>  so it was just sheer bad luck that they missed out on the
> "opportunity".  but.... you have to bear in mind, this is the company
> that sold 25 milllllion MIPS-compatible CPUs (the 350mhz versions and
> before) before MIPS themselves even noticed and went, "oi!  license,
> sonny jim!   nowwww!" :)
>
>  they also sell the realllly low-speed ones (150mhz) for use in MP3 
> players.
>
>  with that in mind, you have to ask yourself, why in seven hells 
> would
> they want to bother with a market (rest of the world) that's only
> going to be 1/10th the size of their internal market?

 Perhaps, but the market is what you make it to be. With a product like 
 that, if you put it in a small *TX board it would sell quite well for 
 the same sort of tasks that the *Plugs sell for. You have to remember 
 that there are only a very small number of viable ARM laptops available. 
 I can only think of two off the top of my head: The Genesi Efika and the 
 Toshiba AC100. Proper OS on the latter is a completely community based 
 hack, but it worked out great, partly thanks to Toshiba respecting the 
 GPL. The former is a reasonably well supported product as far as the 
 software is concerned (ships with Ubuntu by default). But it is still 
 only an 800MHz iMX51. The chances are that a JZ4760 would be "good 
 enough" to compete with it - especially considering that the GPU and 
 video driver stacks would be completely OSS, unlikely with _every_ other 
 solution. And the GPU driver stacks are typically the flakiest, most 
 unreliable part of the entire software stack, even on x86. As somebody 
 who regularly strays off the straight and narrow, I am quite painfully 
 aware of that. And most of the solutions that supposedly "can do 1080p" 
 in theory, can't in practice at the point where they ship (when I got 
 it, playing back a DVD stream didn't even work without frame dropping on 
 the Freescale device with it's 1024x600 display panel).

 The point I'm getting at is that it is better to have DVD quality 
 playback working well in both theory and practice than it is to have 
 1080p in theory by having utterly fail to deliver in practice. 
 Overpromising and underdelivering only gets you unhappy customers who 
 won't be coming back. 1080p isn't the most important thing on the 
 feature list. Long term supportability is certainly ahead of it.

 Gordan



More information about the arm-netbook mailing list