Computers passed several stages in their development. Personal computers appeared after military and industrial machines. Being compact, they allowed maximum automation into work of an employee and a new entertainment class at home: music and video, Internet, computer games.
The growth of computational capacity provided sufficient performance of desktop computers for most tasks long ago. 3-5 year old computers cope well with processing documents, information, and comfortable work in Internet. The engine of the GHz/GB race is a few specific IT areas.
One of them is encoding and decoding video of various formats. Wide spreading of digital cameras, video cameras, and migration of analog photo and video into the professional sector raised the need in appropriate hardware resources of usual desktop computers. The fifth generation of Intel processors (Pentium) got an additional instruction set MMX, which was proudly announced on every "Intel inside" sticker and PC case. This instruction set was intended to accelerate operations with multimedia data. By the way, Intel XScale PXA27x processors support its mobile modification — Wireless MMX. Later on, processors were supplemented with other instruction sets - SSE, 3DNow! etc. Computational requirements grew together with data properties. The fastest Intel 486DX4 100 MHz processors allowed encoding/decoding digital music in mp3 format, Pentium processors (200 MHz and higher) coped with playing DVD, Pentium II processors - DivX-mp4 movies. At present, home computers are capable of authoring semi-professional videos and working with video/audio of any format. Digital media processing is still evolving. Such technologies as HDTV, Blu-ray, HD-DVD are about to come. They will require hundreds and thousands of GB of hard disk space and the most powerful processors.
The second foundation of the mass computer industry is 3D games. It's 3D, because sprite animation and pseudo-3D are left to simple games and mostly gone already. Of course, you can still find high-quality PC games. But they are mostly enthusiast projects or remakes. It goes without saying, high-quality implementation of all 3D technologies in modern games makes them very realistic, but they also require much resources. CPUs retired from processing 3D scenes long ago. This is up to a graphics controller now quite a complex device. The life time of a generation of graphics accelerators is generally six months. After that they are replaced with a new leader. The performance bar is raised very quickly together with prices for video cards.
Up to recently, this situation has had no effect on the market of mobile devices and handhelds in particular. A separate mention should be made of portable game consoles these devices were initially intended for gaming only. Some progress was made with such devices as Nokia N-Gage (a handset game console, which did not become popular) and Sony PlayStation Portable (a game console that can also play music, video, and work in Internet). It's not quite correct to compare their functionality with PDAs, but they are much better at gaming when you travel.
The launch of Intel 2700G graphics controller on the market of handhelds and communicators provided an opportunity to add sterling support for 3D applications and high definition video. Besides, the new controller offers some specific functions. For example, it can support an additional monitor. It also allows to reduce the total power consumption and hence to increase battery life time. The chipset was presented on April 12, 2004, at IDF (Taipei, Taiwan). It was designed by Intel and Intrinsyc; codename Marathon. It currently has three modifications: 2700G3, G5, and G7. The difference is in memory size. The key features are published below.
Main characteristics of Intel 2700G processors:
A number of devices with Intel 2700G is still small, which has to do with the overall recession on the PDA market and sluggishness of engineers that design new devices. The problem of software support for this controller has been getting better recently, one of the reasons being Windows Mobile 5.0. The only production-line handheld with Intel 2700G5, Dell Axim X51v (successor to Dell Axim X50v) is one of the best-in-class. We've got some information and diagrams about the processor from the official documentation on Intel 2700G at the web site of this company.
General description of the processor's architecture
Data between Intel 2700G processor and the other PDA components are exchanged via the following interfaces:
System bus of the Intel XScale PXA 27x processor operates at 100 MHz, which allows 32bit data exchange rates of up to 400 MB/sec. Bus voltages: 1.8V and 2.5V. Among the multiple protocols of the system bus, only two are used for video data exchange: SRAM for writing and VLIO for writing/reading. SRAM provides the fastest write rates compared to VLIO. Both of them use the 2700G controller.
Additional off-die memory appeared in the 2700G7 processor, previous models had a frame buffer only. Built into a die, it's used to store information to be displayed. It significantly raises performance and reduces power consumption versus external memory. Nevertheless, on-die memory has its limits: 704KB of this memory can support only 640x480@16bit. Larger resolutions require external memory. The 2700G3-5 uses its system memory, while the 2700G7 uses local video memory of a graphics processor. Along with storing a frame buffer, the local memory is used in many operations that have to do with decoding video, running 3D applications, etc. Here are its parameters:
Thus, the local video memory in Intel 2700G7 allows to stop using the main memory of a computer. It's no less faster.
One of the key advantages of Intel 2700G, which is often forgot, is its support for two displays. A handheld with this processor actually possesses two graphics cores. The first one is built into a CPU, the second one into a GPU. They allow various schemes of connecting displays and outputting video. Their implementation depends on designers of a given device and a program, the graphics processor itself supports various data outputs and has no limits.
Data sent to graphics devices may vary in content. Besides, they may have various parameters: resolution, color, refresh rate. 2700G GPU has two LCD outs: primary and secondary. Each of them can be controlled by the graphics controller of the CPU as well as by the 2700G GPU.
A programmable LCD switch is used to link up and redirect streams. There are several setups possible. The first one is rather simple - a user works with a PDA in a usual mode, browsing data on the built-in display. It's preferable to use the graphics core of the 2700G processor in this case to feed data to a display. In this case a user can enjoy all advantages of the graphics processor. However, you can use the graphics core of the CPU to get necessary data. The second situation, when a handheld is equipped with two LCDs, one of them possessing worse characteristics. You can come across this case in clam-shell communicators, where the second display is on the top cover to inform a user about the current time, calls, and other events. Here is a natural way of displaying graphics data (it's again not mandatory): the graphics core of Intel 2700G feeds data to the primary high-quality display, while the secondary display is supported by the graphics core of the CPU. And finally, the third setup of the graphics cores and the LCD switch. It's when the secondary output must provide graphics data of higher quality than the primary one. The 2700G graphics processors supports the output resolution up to XGA 1024x748. A handheld can be connected to an LCD, TV-set, digital projector. While the core of the graphics processor feeds data to this device, the primary display of the handheld can be serviced by the CPU core. It should be noted that both video outs can feed the same as well as different video data. The output is switched in the device register. It's accompanied by a brief blackout of displays.
Despite the explosion of 3D graphics on desktop computers (right up to OS interfaces), handheld users mostly (if not always) use 2D graphics. The maximum VGA resolution currently available to handhelds does not require much computational resources. So the system does not slow down even at minimum CPU clocks. Battery life is much more important to portative devices. That's where it makes sense to experiment with operating frequencies of a processor/memory and milliwatts.
Intel 2700G supports the following 2D functions:
A 75 MHz 32 bit graphics core provides a fillrate of 150 mln pixel/sec with the color depth of 16, 18, and 24 bit. There is no need to describe advantages of Antialiasing. If you are not familiar with the term: this technology is used to remove such artifacts as moire and ladder effects at the borders of polygons and inclined lines. Hardware acceleration of 2D Clipping slicing a scene into rectangles reduces power consumption and increases performance. This technology allows to refresh data in a small area of the screen, while the other pixels (outside this area) remain the same. Alpha Blending creates an effect of transparent objects using the fourth property of a pixel, aside from RGB alpha. It stores transparency info of a given pixel, which can be used to determine the final color of a dot. BitBLT functions are used to control movements of a pixel block. Each time a user moves a window in an operating system, he moves a block of pixels. Hardware acceleration of these functions significantly increases visual performance of a computer.
A 3D accelerator in Intel 2700G has brought high-quality 3D graphics of acceptable performance into the world of handhelds. None other chip for handhelds possesses such functionality, you can just have a look at the impressive list of functions supported on the hardware level. The outdated GAPI interface for 3D applications acted as a deterrent up to recently. As we have already said, Windows Mobile 5.0 uses a set of DirectX functions, including DirectDraw for 2D graphics and Direct3D for 3D applications. Unification of the graphics API with its desktop counterpart will allow programmers to port and develop 3D applications faster and to use functions of such chips as Intel 2700G. One of the supported APIs is OpenGL-ES.
Some 3D features of Intel 2700G:
The 75 MHz 32 bit graphics core processes up to 900 thousand triangles per second. The processor works with a 32 bit Z-buffer, supports internal ARGB rendering and hardware conversion of integer values into floating point ones.
Intel 2700G processor tiling accelerator. It's based on the PowerVR technology from Imagination Technologies, used in KYRO video cards. Unlike regular graphics accelerators that process an entire scene at once, tiling graphics controllers divide a scene into some fixed areas tiles. All render and convert operations are performed over these areas. Then they are used to compile a final image. The advantage of this technology lies in a low load on the memory bus and thus in reduced power consumption. But a processor cannot proceed to the next frame until the previous one is not displayed. You can learn about peculiarities of tile architecture here. They are used by some functions of the Intel 2700G.
Deffered Texturing Z-buffer value for each pixel in a tile is compared before it's textured. First of all the processor determines which triangle is visible. Then an appropriate texture is selected for this triangle. This technology helps to avoid double texturing of pixels, except for transparent ones. Small Object Culling this technology culls triangles that are smaller than a single pixel and not displayed. Unused triangles are removed and the graphics core does not process them. Off-screen, Backface Culling another two technologies that remove unused pixels. The first one does it off-screen, the other one does it with triangles that cannot be seen by a user.
The following technologies are used for texturing. Texture compression cuts down the size of data transferred through memory. The processor supports an OpenGL-ES-compatible texture compression format. Mipmapping each point of an object uses different texture versions with appropriate resolution at different distances of the viewpoint. The graphics core will choose the most appropriate texture, depending on a necessary resolution. Texture mapping and filtering a complex of operations to apply textures on objects and subsequent texture filtering. The graphics core of the Intel 2700G processor provides 12 detailing levels (mip-levels) from 2048x2048 to 1x1 texel. The following filtering types are supported: Point Sampling, Bilinear Filtering, Point Mipmapping, Bilinear Mipmapping, Point Mipmapping Linear, Trilinear Mipmapping, Anisotropic Filtering. You can learn about each of these technologies here. Per Vertex Fogging is used to create atmospheric effects (fog, smoke, etc.) The process of rendering pixels takes into account some constant fog color. Rendering can go in several ways. In the general case, fog density depends on a distance from an object. The farther the object, the foggier. Along with making scenes look more realistic, fogging can be used to hide distant objects or to render them with fewer details, which has a positive effect on performance.
A recent influx of digital video certainly had an impact on the handheld market. More or less comfortable video playback became possible for 3-year old handhelds. There appeared high resolutions in the recent models. The only cost of high performance has always been high power consumption. Decoding HD video has always been a resource-consuming task. The same handhelds allowed to watch video of average quality for 1-1.5 hours - hardly an outstanding result.
Intel 2700G graphics processor offers full hardware support for decoding video in MPEG2/4 and WMV formats. There is hardware support for Inverse Zig-Zag, Inverse Cosine Transform, and Motion Compensation for the first type. Intel 2700G processor executes these operations on the level sufficient for decoding DVD, 720x480, more than 30 frames per second. Besides, the load on the system bus decreases by 95%.
Depending on video signal peculiarities, they can be compressed without losing much of video quality. Low color saturation in a scene, when most pixels have similar or identical colors, and excessive video data allow high-quality video compression. Each frame is divided into 8x8 areas to be subject to discrete cosine transform. The data obtained are transformed into zig-zag format. Inverse processes are called correspondingly. When an object is moving, the frame may store only the movement vector instead of an entire object. The process of restoring a moving object by its vector is called motion compensation.
Software and games
This chapter contains some applications that fully support the functions of Intel 2700G.
Two video players, one of them being famous The Core Pocket Media Player, the other one — PocketTV classic. Both of them are free and offer similar functionality, sufficient for any handheld user.
Below is a table of TCPMP performance for video decoding using the Intel 2700G resources and without them.
Here are some games that require a graphics processor. Half of them are ported from PC, the others are independent projects.
Tony Hawk`s Pro Skater 2 a full counterpart of a PC version of sports simulator from Aspyr. It's included into the list of games recommended for Dell Axim x50v/x51v.
Enigmo 3D puzzle from Aspyr.
Stuntcar Extreme futuristic 3D racing. This game is included into the list of recommended games for Dell Axim.
GeoRally EX another racing simulator, more realistic than the previous.
Quake 3 Arena no comments. It's a full version of the famous FPS ported from PC. This game has offered more or less decent performance only with Intel 2700G. It requires 150MB of free memory and original files to install.
The graphics processor can also accelerate other applications that do not support it officially.
It won't be an exaggeration to tell Intel 2700G processor a complete counterpart of desktop accelerators. Now handheld computers can manage high-quality video and 3D graphics, output video to a secondary display, and enjoy a longer battery life. It offers the richest range of functions to work with practically any video data.
Unfortunately, there are still few devices that use this graphics controller. There are several explanations: The new controller from Intel is well in advance of its time, it happens rather often. Besides, the processor was launched during a recession of the PDA market, these devices are being replaced with communicators. The lack of proper support from the operating system also played its role. It appeared only in WM 5.0. However, even such a narrow market houses graphics controllers from the two key players on the market of graphics accelerators NVIDIA and ATi. These are GoForce 5500 and Imageon processors. Mostly oriented to handset and smart phone markets, they cannot strive to be used in handhelds and communicators. One of ATi Imageon models is built into HP iPAQ hx4700.
Perhaps, Intel 2700G will not be widely spread and will remain in history as the first graphics accelerator for handhelds. Intel plans on replacing it with the next generation of 2900G processors, based on the same PowerVR technology. The new graphics processor should work in tandem with the new processor from Intel PXA290. According to news agencies, the announcement of new chips is planned at the second quarter of 2006. The first devices will appear in the beginning of 2007. Anyway, it's not too long to wait. The new products promise to be very interesting.
Sergei Solomatin (firstname.lastname@example.org)
June 20, 2006
Write a comment below. No registration needed!