• Hey, guest user. Hope you're enjoying NeoGAF! Have you considered registering for an account? Come join us and add your take to the daily discourse.

Look what I have found ;).

Panajev2001a

GAF's Pleasant Genius
http://appft1.uspto.gov/netacgi/nph...ji"&OS="Yamaguchi,+Yuji"&RS="Yamaguchi,+Yuji"

This guy, the inventor... does work somewhere... well... in a company I like ;).



What is the patent about ?

[0135] The SDC 11 controls the transfer of data with the CPU and the external memory and the transfer of data with the global module 12 and performs processing on the vertex data, generation of parameters required for the rasterization in the processing units of the local modules 13-0 to 13-3, and other processing.

[0136] The concrete content of the processing in the SDC 11 is as follows. Further, processing routine of the SDC 11 is shown in FIG. 8.

[0137] First, when data is input (ST1), the SDC 11 performs a per-vertex operation (ST2).

[0138] In this processing, when vertex data of three-dimensional coordinates, normal vector, and texture coordinates are input, the vertex data is processed. As representative processing, there are processing for coordinate conversion for changing the shape of an object, projecting onto a screen, etc., processing for lighting, and processing for clipping.

[0139] The processing carried out here corresponds to the execution of the so-called Vertex Shader.

[0140] Next, DDA (digital differential analyzer) parameters are computed (ST3).

[0141] This processing calculates the inclinations of various data (Z, texture coordinates, colors, etc.) and other DDA parameters required for the rasterization.

[0142] Next, it broadcasts the calculated DDA parameters to all local modules 13-0 to 13-3 via the global module 12 (ST4).

[0143] This processing transfers the broadcasted parameters to the local modules 13-0 to 13-3 via the global module 12 by using a channel different from that of the cache fill explained later. However, this does not affect the content of the global cache.

[0144] The global module 12 has a router function and a global cache 121 shared by all local modules.

[0145] The global module 12 broadcasts the DDA parameters by the SDC 11 to all local modules 13-0 to 13-3 connected in parallel.


[..]

[0222] When receiving as input a broadcasted parameter data (ST21), the processing unit 131 decides whether or not the triangle is an area which it is in charge of (ST22). If an area it is in charge of, it performs rasterization (ST23).

[0223] Namely, when receiving a broadcasted parameter, it decides whether or not the triangle belongs to the area it is in charge of, for example, an area interleaved in 4.times.4 pixel rectangular area units. If belonging to it, it rasterizes various data (Z, texture coordinates, colors, etc.). In this case, the generated unit is 2.times.2 pixels in one cycle per one local module.

[0224] Next, perspective correction of the texture coordinates is carried out (ST24). Further, this processing stage also includes calculation at the MipMap level by LOD (Level of Detail) computation and (u, v) address computation for the texture access.

[0225] Next, texture reading is carried out (ST25).

[0226] In this case, the processing units 131-0 to 131-3 of the local modules 13-0 to 13-3 first check the entries of the local caches 133-0 to 133-3 at the time of reading the texture (ST31) and when there is an entry (ST32), reads out the required texture data (ST33).

[0227] When the required texture data is not in the local caches 133-0 to 133-3, the processing units 131-0 to 131-3 send local cache fill requests to the global module 12 through the global interfaces 134-0 to 134-3 (ST34).

[...]

[0229] When the requested block data is sent from the global module 12, the corresponding local module updates the local cache (ST35, ST36), and the processing unit reads out the block data (ST33).

[0230] Note that, here, simultaneous processings of four textures at the maximum are assumed. The number of the texture data to be read out is 16 texcels per pixel.

[0231] Next, texture filtering is carried out (ST26).

[0232] In this case, the processing units 133-0 to 133-3 perform filtering such as four-neighbor interpolation by using the read out texture data and the decimal portion obtained at the time of calculation of the (u, v) address.

[0233] Next, it performs processing of the pixel level (Per-Pixel Operation) (ST27).

[0234] In this processing, operation in pixel units is carried out by using the texture data after filtering and various data after rasterization. The processing carried out here corresponds to lighting at the pixel level (Per-Pixel Lighting) or other so-called "Pixel Shader". In addition, te following processing is included:



Let's see if you can figure it out ;).

For the more technically inclined: it seems to process using subdividible QUADS and can load QUADS from more than one mesh (QUAD pipelines are common in modern GPUs).
 

Panajev2001a

GAF's Pleasant Genius
I cannot edit the thread's title: a good friend PM'ed the patent to me at Beyond3D.

So, ... for this forum... I found it... well... sort of...


uh-oh...
 

Panajev2001a

GAF's Pleasant Genius
light-blue-yoshi-crying.jpg
 

Grizzlyjin

Supersonic, idiotic, disconnecting, not respecting, who would really ever wanna go and top that
I have no idea...so I'm just going to say PStwo and be on my way. :p

Thanks for the info. :D

EDIT: For future reference, punk rock Yoshi is the one that should be posted...always and forever.
 

Grizzlyjin

Supersonic, idiotic, disconnecting, not respecting, who would really ever wanna go and top that
Panajev2001a said:
Vertex and Pixel Shaders... darn TV induced ADD :p.

I'm part of the Neo-MTV generation, there is no hope for me. :lol
 

cabel

Member
Panajev2001a said:
Vertex and Pixel Shaders... darn TV induced ADD :p.

Dear Panajev2001a,

Many of us have jobs -- some of us even have families. I don't have a family. However, I do have a job. I'm also not a patent lawyer, nor do most patents make any sense to me, because patents are designed so only patent lawyers understand them.

For example, if I were patenting a straw, it would turn out to be: "AN APPARATUS FOR THE FORCED DRAWING OF LIQUID FROM A FLEXIBLE MATERIAL WHICH USES INDUCTION PRESSURE TO DRAW CONTROLLABLE AMOUNTS OF LIQUID FROM A VESSEL."

I may have written that, but I can't read it. In other words: total, mumbo, jumbo.

My point:

Instead of making us to play the "decode the patent game" -- honestly, one of the least popular games on earth -- how about a nice summary of what this is, why it's important, and why we should care? You could be sharing something truly critical to those of us here, but none of us would ever know because of poor presentation.

Some PowerPoint slides would also help.

Sincerely yours,
Cabel

PS: I don't have ADD.
 

Panajev2001a

GAF's Pleasant Genius
I did make the summary.

You wasted more time writing that message and editing it for wittiness than you would have used to read the first few lines of the "quote" I copied and pasted :p.

[0135] The SDC 11 controls the transfer of data with the CPU and the external memory and the transfer of data with the global module 12 and performs processing on the vertex data, generation of parameters required for the rasterization in the processing units of the local modules 13-0 to 13-3, and other processing.

[0136] The concrete content of the processing in the SDC 11 is as follows. Further, processing routine of the SDC 11 is shown in FIG. 8.

[0137] First, when data is input (ST1), the SDC 11 performs a per-vertex operation (ST2).

[0138] In this processing, when vertex data of three-dimensional coordinates, normal vector, and texture coordinates are input, the vertex data is processed. As representative processing, there are processing for coordinate conversion for changing the shape of an object, projecting onto a screen, etc., processing for lighting, and processing for clipping.

[0139] The processing carried out here corresponds to the execution of the so-called Vertex Shader.

[0140] Next, DDA (digital differential analyzer) parameters are computed (ST3).

[0141] This processing calculates the inclinations of various data (Z, texture coordinates, colors, etc.) and other DDA parameters required for the rasterization.

[0142] Next, it broadcasts the calculated DDA parameters to all local modules 13-0 to 13-3 via the global module 12 (ST4).

[0143] This processing transfers the broadcasted parameters to the local modules 13-0 to 13-3 via the global module 12 by using a channel different from that of the cache fill explained later. However, this does not affect the content of the global cache.

[0144] The global module 12 has a router function and a global cache 121 shared by all local modules.

[0145] The global module 12 broadcasts the DDA parameters by the SDC 11 to all local modules 13-0 to 13-3 connected in parallel.


[..]

[0222] When receiving as input a broadcasted parameter data (ST21), the processing unit 131 decides whether or not the triangle is an area which it is in charge of (ST22). If an area it is in charge of, it performs rasterization (ST23).

[0223] Namely, when receiving a broadcasted parameter, it decides whether or not the triangle belongs to the area it is in charge of, for example, an area interleaved in 4.times.4 pixel rectangular area units. If belonging to it, it rasterizes various data (Z, texture coordinates, colors, etc.). In this case, the generated unit is 2.times.2 pixels in one cycle per one local module.

[0224] Next, perspective correction of the texture coordinates is carried out (ST24). Further, this processing stage also includes calculation at the MipMap level by LOD (Level of Detail) computation and (u, v) address computation for the texture access.

[0225] Next, texture reading is carried out (ST25).

[0226] In this case, the processing units 131-0 to 131-3 of the local modules 13-0 to 13-3 first check the entries of the local caches 133-0 to 133-3 at the time of reading the texture (ST31) and when there is an entry (ST32), reads out the required texture data (ST33).

[0227] When the required texture data is not in the local caches 133-0 to 133-3, the processing units 131-0 to 131-3 send local cache fill requests to the global module 12 through the global interfaces 134-0 to 134-3 (ST34).

[...]

[0229] When the requested block data is sent from the global module 12, the corresponding local module updates the local cache (ST35, ST36), and the processing unit reads out the block data (ST33).

[0230] Note that, here, simultaneous processings of four textures at the maximum are assumed. The number of the texture data to be read out is 16 texcels per pixel.

[0231] Next, texture filtering is carried out (ST26).

[0232] In this case, the processing units 133-0 to 133-3 perform filtering such as four-neighbor interpolation by using the read out texture data and the decimal portion obtained at the time of calculation of the (u, v) address.

[0233] Next, it performs processing of the pixel level (Per-Pixel Operation) (ST27).

[0234] In this processing, operation in pixel units is carried out by using the texture data after filtering and various data after rasterization. The processing carried out here corresponds to lighting at the pixel level (Per-Pixel Lighting) or other so-called "Pixel Shader". In addition, te following processing is included:
 

axxxj

Animator in Waiting
i still don't really know what it's all about though from the looks of it it looks like a GPU patent but i'm probably very wrong.
 

Sho Nuff

Banned
Panajev2001a said:
I did make the summary.

You wasted more time writing that message and editing it for wittiness than you would have used to read the first few lines of the "quote" I copied and pasted :p.

This still means absolutely nothing to me.
 

GDGF

Soothsayer
"AN APPARATUS FOR THE FORCED DRAWING OF LIQUID FROM A FLEXIBLE MATERIAL WHICH USES INDUCTION PRESSURE TO DRAW CONTROLLABLE AMOUNTS OF LIQUID FROM A VESSEL."


I want that as my tag.
 
Panajev2001a said:
VERTEX AND PIXEL SHADERS, COMPARABLE TO DX9+ pipeline set-up.

Would you please just tell us what the hell this patent is for? This is not a fun game.

EDIT: Okay, so ... it's a patent to make things ... shiny? I guess.
 
:) Sorry Pana, I think you're on your own ... at least until some of the techier Americans wake up. I'm glad you've found something cool, but I lack any semblance of the knowledge to decipher what it is.

What needs shininess these days? This isn't some new Polyphony subroutine, is it, designed to make the cars in GT5 so shiny you can't actually *look* at the game?
 

Panajev2001a

GAF's Pleasant Genius
JackFrost2012 said:
Would you please just tell us what the hell this patent is for? This is not a fun game.

EDIT: Okay, so ... it's a patent to make things ... shiny? I guess.

This patents decribe a GPU.

The interesting thing is what it describe being in there: all in all it seems very close to what you would see in a chip like the X800 or the NV40 (except I do not know if these Vertex Shading and Pixel Shading Units are multi-threaded or not [they might not be]).

This shows at least that Sony has put some research dollars into programmable GPU designs.

The author of this patent works inside one of Sony's R&D labs and was mentioned in a Stanford paper regarding the Stanford Shading Language project which is co-founded by Sony/SCE, ATI and nVIDIA.
 

Minotauro

Finds Purchase on Dog Nutz
AirBrian said:
Shiny disco balls!

Great, now that song is stuck in my head. This should make for an interesting day of work.

And, Pana, maybe you should find a forum with members that more closely reflect your interests. By now, you have to know that when you make these posts, no one will have a fucking clue what you're talking about. Then, for some reason, you act all dumbfounded as if we're the ones who should know or care about this stuff. I swear, EVERY ONE of your posts goes like this. I know you want to make use of all the bullshit you're learning in college but this is probably not the right place to do it.

Then again, maybe I'm the moron and these threads only go over my head. Judging from the first twenty or so posts in every thread you start, however, I'm leaning toward the negative.
 

Panajev2001a

GAF's Pleasant Genius
Minotauro said:
Great, now that song is stuck in my head. This should make for an interesting day of work.

And, Pana, maybe you should find a forum with members that more closely reflect your interests. By now, you have to know that when you make these posts, no one will have a fucking clue what you're talking about. Then, for some reason, you act all dumbfounded as if we're the ones who should know or care about this stuff. I swear, EVERY ONE of your posts goes like this. I know you want to make use of all the bullshit you're learning in college but this is probably not the right place to do it.

Looking at how each and everyone at this forum is the "I can count polygons in a frame... just like that" and "clearly this engine (say in the Super Mario Sunshine case) sucks ass", etc... well I would think there is more interest.

Second, if I announced and prooved (not true) that PlayStation 3 for sure will not have any kind of Vertex or Pixel Shaders people would complain to no end.

Yes, the same people who cannot read a short paragraph I posted.

Did i want people to read the patent ?

No, not really and that's why I posted the relevant quote.

Still, I take your point... I will try to be a bit more clear in my topic starters.
 

TekunoRobby

Tag of Excellence
Don't worry Pana, you're still one of my favorite posters. :)

And though I didn't fully understand your initial post it made more than enough sense to me.
 

djtiesto

is beloved, despite what anyone might say
AirBrian said:
:lol

Ah, I got it stuck in my head now too. At least it's Friday!

Hahaha, I'm in a house music mood too today... and Fridays for me mean short days :D
 

Slo

Member
So is the SDC 11 a set of APIs or a hardware solution that provides vertex and pixel shading? Excuse my ignorance, as I only half understand the legalise in the patent.

But judging by this thread, I might be better off then most. :)
 

Panajev2001a

GAF's Pleasant Genius
TekunoRobby said:
Don't worry Pana, you're still one of my favorite posters. :)

And though I didn't fully understand your initial post it made more than enough sense to me.

I hope the follow-ups were better.
 

Panajev2001a

GAF's Pleasant Genius
Slo said:
So is the SDC 11 a set of APIs or a hardware solution that provides vertex and pixel shading? Excuse my ignorance, as I only half understand the legalise in the patent.

But judging by this thread, I might be better off then most. :)

I think the SDC's would be functional blocks in the GPU with probably programmable processing units inside optimized to perform that task and with their own Instruction Set.

The DC would house your Vertex Shader ALUs basically.
 
Top Bottom