Các giải pháp kỹ thuật sử dụng trong WCDMA – HSDPA

Vấn đề chúng ta cần quan tâm là chất lượng kênh đường truyền của mỗi người sử dụng độc lập và cách xác định nó. Ví dụ như: tỷ lệ công suất ký hiệu trên tạp âm ( tỷ số Es/No), chất lượng bộ tách UE. Nút B có thể ước lượng tốc độ dữ liệu được hỗ trợ cho mỗi UE bằng cách giám sát các lệnh điều khiển công suất phát theo chu kỳ một giá trị CQI đặc thù của HSDPA trên kênh điều khiển vật lý dành riêng tốc độ cao (HS-DPCCH) đường lên, kênh này cũng mang cả thông tin báo hiệu (Ask / Nask) ở dạng gói dựa trên L1 cho mỗi kênh liên kết. Khi đã ước tính được chất lượng kênh, hệ thống chia sẻ tài nguyên mã và công suất HS-DSCH giữa những người sử dụng khác nhau. Lớp điều khiển truy nhập môi trường MAC được đặt tại nút B, do đó cho phép truy nhập nhanh hơn tới các giá trị đo lường tuyến kết nối, lập lịch gói hiệu quả hơn và nhanh hơn, cũng như có thể kiểm soát chất lượng QoS chặt chẽ hơn. So sánh với kỹ thuật WCDMA, kênh HS-DSCH không thực hiện với điều kiện công suất phát nhanh và hệ số trải phổ thay đổi. Bằng cách sử dụng kỹ thuật mã hoá Turbo tốc độ thay đổi, điều chế 16 QAM, cũng như hoạt động đa mã mở rộng, kênh HS-DSCH hỗ trợ tốc độ dữ liệu đỉnh từ 120 Kbps tới hơn 10Mbps. Quá trình điều chế và mã hoá thích ứng cơ bản có một dải động khoảng 20dB, và được mở rộng hơn nữa số đa mã khả dụng.

doc156 trang | Chia sẻ: lvcdongnoi | Lượt xem: 3372 | Lượt tải: 1download
Bạn đang xem trước 20 trang tài liệu Các giải pháp kỹ thuật sử dụng trong WCDMA – HSDPA, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
ợc gọi là HS-DSCH (High Speed Downlink Shared Channel)-kênh chia sẻ đường xuống tốc độ cao. Kênh truyền tải này hoạt động hoàn toàn khác biệt so với các kênh thông thường và cho phép thực hiện download với tốc độ vượt trội. Và đây là một kênh chuyên dụng cho việc download. Điều đó cũng có nghĩa là dữ liệu sẽ được truyền trực tiếp từ nguồn đến điện thoại. Song quá trình ngược lại, tức là truyền dữ liệu từ điện thoại đến một nguồn tin thì không thể thực hiện được khi sử dụng công nghệ HSDPA. Công nghệ này có thể được chia sẻ giữa tất cả các người dùng có sử dụng sóng radio, sóng cho hiệu quả download nhanh nhất. HSDPA còn sử dụng điều chế và mã hoá thích ứng AMC, HARQ nhanh, và lập lịch gói (Packet Scheduling) nhanh. Những tính năng này được phối hợp chặt chẽ và cho phép thích ứng các tham số truyền dẫn theo mỗi khoảng thời gian TTI (Transmission Time Interval) nhằm liên tục hiệu chỉnh sự thay đổi của chất lượng kênh vô tuyến. 5.2 Những cải tiến quan trọng của HSDPA so với WCDMA Hình 5.2 Các tính năng cơ bản của HSDPA khi so sánh với WCDMA Trong WCDMA, điều khiển công suất nhằm giữ ổn định chất lượng tín hiệu nhận được (Eb/No). Điều này sẽ tạo ra các giá trị đỉnh trong công suất phát và tăng nền nhiễu đa truy cập, do đó sẽ làm giảm dung lượng của toàn mạng. Hơn thế nữa, sự hoạt động của điều khiển công suất yêu cầu luôn luôn phải đảm bảo một mức dự trữ nhất định trong tổng công suất phát của Node B để thích ứng với các biến đổi của nó. Loại bỏ được điều khiển công suất sẽ tránh được các hiệu ứng tăng công suất kể trên cũng như không cần tới dự trữ công suất phát của tế bào. Tuy nhiên, do không sử dụng điều khiển công suất, HSDPA yêu cầu các kỹ thuật khác để thích ứng các tham số tín hiệu phát nhằm liên tục bám theo các biến thiên của kênh truyền vô tuyến. Với kỹ thuật AMC, điều chế và tỉ lệ mã hoá được thích ứng một cách liên tục với chất lượng kênh thay cho việc điều khiển công suất. Truyền dẫn sử dụng nhiều mã Walsh cũng được sử dụng trong quá trình thích ứng liên kết. Sự kết hợp của hai kỹ thuật thích ứng liên kết trên đã thay thế hoàn toàn kỹ thuật hệ số trải phổ biến thiên trong WCDMA do khả năng thích ứng chậm đối với sự biến thiên của truyền dẫn vô tuyến tốc độ cao. Do HSDPA không còn sử dụng điều khiển công suất, phải tối thiểu hoá sự thay đổi của chất lượng kênh vô tuyến trong mỗi khoảng thời gian TTI, vấn đề này được thực hiện nhờ việc giảm độ rộng của TTI từ 10 ms ở WCDMA xuống còn 2ms ở HSDPA. Với sự bổ sung kỹ thuật HARQ nhanh, nó còn cho phép phát lại một cách nhanh nhất các block dữ liệu đã bị mất hoặc bị lỗi và khả năng kết hợp với thông tin mềm ở lần phát đầu tiên với các lần phát lại sau đó. Để thu thập được thông tin về chất lượng kênh hiện thời cho phép các kỹ thuật thích ứng liên kết và lập biểu gói theo dõi giám sát một cách liên tục các điều khiển vô tuyến hiện tại của thuê bao di động, lớp điều khiển trung gian MAC thì làm nhiệm vụ giám sát kênh nhanh cho phép Bộ lập biểu gói nhanh và đặc tính chia sẻ theo thời gian của kênh HS-DSCH về bản chất có thể xem như phân tập lựa chọn đa người dùng với những lợi ích rất to lớn đối với việc cải thiện thông lượng của tế bào. Việc chuyển dịch chức năng lập biểu gói đến Node B là thay đổi chính về kiến trúc nếu so sánh với WCDMA. 5.3 Nguyên lý hoạt động của HSDPA Hình 5.3 Nguyên lý hoạt động cơ bản của HSDPA HSDPA gồm các giải pháp: Mã hoá và điều chế thích ứng AMC Thực hiện đan xen thời gian truyền dẫn ngắn TTI=2ms Truyền dẫn đa mã, lớp vật lý tốc độ cao L1 Yêu cầu lặp tự động lai H-ARQ. Trong giải pháp HSDPA, thiết bị sắp xếp gói tin sẽ được chuyển từ bộ điều khiển mạng vô tuyến RNC tới Node-B nhằm giúp người sử dụng dễ dàng truy nhập vào các chức năng thống kê giao diện vô tuyến. Kỹ thuật sắp xếp gói tin tiên tiến sẽ giúp điều chỉnh được tốc độ dữ liệu người sử dụng sao cho thích hợp với các điều kiện kênh vô tuyến tức thời. Trong quá trình kết nối, UE sẽ định kỳ gửi một CQI (Channel Quality Indicator)-chỉ thị chất lượng kênh tới Node-B cho biết tốc độ dữ liệu nào (bao gồm kỹ thuật điều chế và mã hoá, số lượng các mã đã sử dụng) mà thiết bị này có thể hỗ trợ khi ở dưới các điều kiện vô tuyến hiện thời. Đồng thời, UE gửi một báo nhận (Ack/Nack) ứng với mỗi gói giúp node-B biết được thời điểm lặp lại quá trình truyền dữ liệu. Cùng với chức năng thống kê chất lượng kênh tương ứng cho từng UE trong một cell, thiết bị sắp xếp gói tin sẽ thực hiện sắp xếp các gói của các UE một cách công bằng. Vấn đề chúng ta cần quan tâm là chất lượng kênh đường truyền của mỗi người sử dụng độc lập và cách xác định nó. Ví dụ như: tỷ lệ công suất ký hiệu trên tạp âm ( tỷ số Es/No), chất lượng bộ tách UE. Nút B có thể ước lượng tốc độ dữ liệu được hỗ trợ cho mỗi UE bằng cách giám sát các lệnh điều khiển công suất phát theo chu kỳ một giá trị CQI đặc thù của HSDPA trên kênh điều khiển vật lý dành riêng tốc độ cao (HS-DPCCH) đường lên, kênh này cũng mang cả thông tin báo hiệu (Ask / Nask) ở dạng gói dựa trên L1 cho mỗi kênh liên kết. Khi đã ước tính được chất lượng kênh, hệ thống chia sẻ tài nguyên mã và công suất HS-DSCH giữa những người sử dụng khác nhau. Lớp điều khiển truy nhập môi trường MAC được đặt tại nút B, do đó cho phép truy nhập nhanh hơn tới các giá trị đo lường tuyến kết nối, lập lịch gói hiệu quả hơn và nhanh hơn, cũng như có thể kiểm soát chất lượng QoS chặt chẽ hơn. So sánh với kỹ thuật WCDMA, kênh HS-DSCH không thực hiện với điều kiện công suất phát nhanh và hệ số trải phổ thay đổi. Bằng cách sử dụng kỹ thuật mã hoá Turbo tốc độ thay đổi, điều chế 16 QAM, cũng như hoạt động đa mã mở rộng, kênh HS-DSCH hỗ trợ tốc độ dữ liệu đỉnh từ 120 Kbps tới hơn 10Mbps. Quá trình điều chế và mã hoá thích ứng cơ bản có một dải động khoảng 20dB, và được mở rộng hơn nữa số đa mã khả dụng. 5.4 Cấu trúc HSDPA 5.4.1 Mô hình giao thức HSDPA Hình 5.4 Kiến trúc giao diện vô tuyến của kênh truyền tải HS-DSCH Trong cấu trúc HSDPA, thiết bị sắp xếp gói tin sẽ được chuyển từ bộ điều khiển mạng vô tuyến RNC tới Node-B nhằm giúp người sử dụng dễ dàng truy nhập vào các chức năng thống kê giao diện vô tuyến. Kỹ thuật sắp xếp gói tin tiên tiến sẽ giúp điều chỉnh được tốc độ dữ liệu người sử dụng sao cho thích hợp với các điều kiện kênh vô tuyến tức thời. Nếu như tất cả các kênh truyền tải theo kiến trúc WCDMA, chúng đều chấm dứt tại RNC thì kênh HS-DSCH lại chấm dứt ngay tại Node B, lớp MAC-hs (lớp điều khiển truy nhập môi trường tốc độ cao), sẽ điều khiển các tài nguyên của kênh này và nằm ngay tại Node B. Do đó, cho phép nhận các bản tin về chất lượng kênh hiện thời để có thể tiếp tục theo dõi giám sát chất lượng kênh hiện thời để có thể liên tục theo dõi giám sát chất lượng tín hiệu cho thuê bao tốc độ thấp. Vị trí này của MAC-hs tại Node B cũng cho phép kích hoạt giao thức HARQ từ lớp vật lý, nó giúp cho các quá trình phát lại diễn ra nhanh hơn. Đặc biệt hơn, lớp MAC – hs chịu trách nhiệm quản lý chức năng HARQ cho mỗi user, phân phối tài nguyên HS-DSCH giữa tất cả các MAC-d theo sự ưu tiên của chúng (ví dụ như lập lịch gói), và lựa chọn khuôn dạng truyền tải thích hợp cho mỗi TTI. Các lớp giao diện vô tuyến nằm trên MAC không thay đổi so với kiến trúc WCDMA bởi vì HSDPA chỉ tập trung vào việc cải tiến truyền tải của các kênh logic. Lớp MAC-hs cũng lưu giữ dữ liệu của user được phát qua giao diện vô tuyến, điều đó đã tạo ra một số thách thức đối với việc tối ưu hóa dung lượng bộ nhớ đệm của Node B. 5.4.2 Cấu trúc kênh Hình 5.5 Giao diện vô tuyến của HSDPA So với WCDMA thì HSDPA có thêm một số kênh vật lý thêm vào: - Kênh vật lý chia sẻ đường xuống tốc độ cao HS-PDSCH (High Speed Physical Downlink Shared Channel) - Kênh điều khiển vật lý HS-DPCCH (HS-Physical Control Channel). 5.4.2.1 Kênh vật lý chia sẻ đường xuống tốc độ cao: HS-PDSCH Trong kênh này thời gian và mã hoá được chia sẽ giữa những người sử dụng gắn liền với Node-B. Đây là cơ cấu truyền tải cho các kênh logic được thêm vào: - Kênh chia sẻ đường xuống tốc độ cao HS-DSCH (HS-Downlink Shared Channel) - Kênh điều khiển chia sẻ tốc độ cao HS-SCCH (HS-Shared Control Channel). Những tài nguyên mã hoá HS-DSCH gồm có một hoặc nhiều bộ mã định hướng với hệ số phân bố cố định SF 16. Phần lớn 15 bộ mã này có thể phân bổ cho những yêu cầu về truyền dẫn dữ liệu và điều khiển. Các tài nguyên mã hoá sẵn sàng được chia sẻ chủ yếu trong miền thời gian nhưng nó có thể chia sẻ tài nguyên mã hoá bằng cách dùng mã hoá đa thành phần. Khi cả thời gian và bộ mã được chia sẽ, từ hai đến bốn người sử dụng có thể chia sẽ tài nguyên mã hoá trong cùng một TTI. Hình 5.6 Thời gian và bộ mã được chia sẻ trong HS-DSCH Đặc tính quan trọng của kênh HS-DSCH là tính linh động của nguồn được chia sẻ trong khoảng thời gian rất ngắn 2ms. Khi đó dữ liệu người dùng được đặt trên kênh HS-DSCH, chúng liên tục được gửi đi trong khe thời gian 2ms đó. Khác với WCDMA trong HSDPA còn có thêm khoảng DTX - khoảng truyền gián đoạn nằm trên khe DPDCH, nó có tác dụng lọc nhiễu trên đường truyền nhưng không thể đạt được tốc độ lớn nhất. Vì WCDMA ra đời với mục tiêu chính là tăng dung lượng hệ thống cho các dịch vụ thoại so với hệ thống 2G (GSM) mà thôi chứ chưa sự đạt được những yêu cầu và kỳ vọng đối dịch vụ số liệu vì tốc độ hỗ trợ dữ liệu còn thấp (khoảng 384 kbps). Đối với dịch vụ thoại thì chúng ta đã biết, nguồn tài nguyên (mã, công suất, nhiễu) yêu cầu để truyền dẫn dịch vụ này là không thay đổi (do tốc độ truyền dẫn là không thay đổi) do đó điều khiển công suất thực sự hiệu quả vì nó giảm nhiễu MAI làm cho dung lượng kênh thoại mà hệ thống có thể đáp ứng trên một đơn vị tài nguyên vô tuyến tăng lên. Tuy vậy khi triển khai các dịch vụ số liệu ( File Transfer, Internet Access, E-mail,…) chúng ta thấy rằng đặc thù của những dịch vụ này là yêu cầu nguồn tài nguyên rất lớn và trong khoảng một thời gian ngắn. Ví dụ như nếu truy nhập vào một trang web nào đó thì cùng một lúc nội dung văn bản và hình ảnh của website cần truyền đến máy đầu cuối trong một khoảng nhất định. Sau khi nội dung trang web đã download về máy đầu cuối thì thông thường người sử dụng sẽ xem nội dung và không truy nhập tài nguyên hệ thống nữa. Những dịch vụ mà yêu cầu nguồn tài nguyên lớn và trong khoảng thời gian ngắn như vậy trong kỹ thuật người ta gọi chung một tên là “bursty data service”. Với kênh HS-DSCH trong HSDPA thì người ta cấp phát 15 mã trải phổ với hệ số trải 16 để dùng chung giữa các máy trong cùng một sector. Các máy được cấp phát tài nguyên trong từng khoảng thời gian nhất định. Bộ scheduler sẽ cấp phát tài nguyên: bao nhiêu mã trải phổ, công suất là bao nhiêu phụ thuộc vào yêu cầu dịch vụ, trạng thái kênh của user đó. Hình 5.7 Trạng thái kênh của các user Như hình vẽ trên, tại khoảng thời gian đầu tiên User 1 có trạng thái kênh tốt nên bộ scheduler đưa ra quyết định cấp phát tài nguyên cho User này. Khi đã quyết định cấp phát tài nguyên cho User 1 này kỹ thuật thích ứng cũng được áp dụng. Nếu trạng thái kênh của User lúc này tốt và nhu cầu về tốc độ truyền dẫn lớn thì máy phát có thể dùng điều chế 16-QAM hoặc mã kênh với tỷ lệ mã lớn để truyền tốc lớn hơn. Đến khoảng thời gian thứ 2, User 2 sẽ được cấp phát để truyền dẫn vì User 2 có trạng thái kênh tốt hơn như trên hình vẽ. Bằng việc cấp phát tài nguyên động, kết hợp với kỹ thuật thích ứng (ACM) chúng ta có thể thấy rằng kênh truyền dẫn chung luôn có chất lượng kênh ở mức tốt được thể hiện ở đường nét đứt trên hình vẽ. Ngoài dữ liệu người sử dụng, Node-B còn thực hiện truyền dẫn báo hiệu điều khiển nhằm thông báo sắp xếp cho người dùng kế tiếp. Báo hiệu này được sắp xếp trong kênh điều khiển chia sẻ tốc độ cao (HS-SCCH), là kênh dùng chung cho các người sử dụng, và nó được thực hiện bằng cách truyền dẫn hai khe thời gian HS-SCCH TTI. Kênh HS-SCCH mang những thông tin sau: - Mặt lạ ID của những người dùng đặc trưng UE. Nhiệm vụ chính của mặt lạ là xác định người dùng được phục vụ trong chu kỳ TTI tiếp theo. - Thông tin liên quan đến khuôn dạng truyền tải, mô tả các mã định kênh, phương thức kỹ thuật điều chế được sử dụng. Tỉ lệ mã hoá được trích ra từ kích cỡ của block truyền tải và các tham số khuôn dạng truyền tải khác. - Thông tin liên quan đến HARQ: đó có thể là chu kỳ phát tiếp theo sẽ là một block mới hay là một block được phát lại (do có thể gặp lỗi trước đó nên yêu cầu phát lại) và thông tin về các phiên bản. Thông tin điều khiển này chỉ được sử dụng cho các UE sẽ được phục vụ trong chu kỳ tiếp theo, như vậy kênh báo hiệu này là một kênh chia sẻ theo thời gian cho tất cả các user. Hình 5.8 Hệ thống trong trường hợp 1 kênh HS-SCCH và phân chia đa thời gian RNC cũng có thể chỉ rõ công suất được khuyến nghị cho HS-SCCH (độ lệch liên quan tới các bit hoa tiêu của của kênh DPCH kết hợp). Công suất phát của HS-SCCH có thể là hằng số hoặc thay đổi theo thời gian tuỳ theo một chiến lược điều khiển công suất nào cho HS-DCCH. 5.4.2.2 Kênh điều khiển vật lý tốc độ cao: HS-DPCCH Đây là kênh đường lên, được sử dụng mang tín hiệu báo nhận (ACK) đến Node-B trên mỗi block. Nó cũng được dùng để chỉ thị Chất lượng kênh CQI, là yếu tố được sử dụng trong AMC. Hình 5.9 Cấu trúc kênh HS-DPCCH Kênh HS-DPCCH dùng để cố định hệ số phân bố 256 và có một khe cấu trúc có độ rộng là 2/3 ms. + Khe đầu tiên được sử dụng để cho thông tin về HARQ. + Hai khe còn lại được dành cho CQI. Thông tin về HARQ luôn luôn được gửi khi mà kênh HS- SCCH giải mã chính xác nhận ở đường tách sóng xuống. Cả 2 khe đều hoạt động riêng biệt để lặp điều khiển. Ví dụ, trong một số trường hợp, quá trình lặp lại này diễn ra với chu kỳ 2 ms và hoạt động ở cạnh của tế bào khi công suất hiện tại không chắc chắn đủ cho quá trình lặp lại. Công suất điều khiển từ những tế bào HSDPA cũng có thể làm giảm bớt công suất nhận từ kênh HS-DPCCH trong quá trình chuyển giao trong miền nhỏ như thiết bị đầu cuối làm giảm công suất truyền nếu mỗi tế bào hoạt động gửi một lệnh yêu cầu. Như vậy là việc không dùng điều khiển công suất mà điều khiển cấp phát nguồn tài nguyên sẽ làm cho dung lượng hệ thống tăng nhờ lợi dụng đặc tính biến đổi của kênh phading. Rõ ràng bằng việc sử dụng điều khiển truyền dẫn đã làm thay đổi cách nhìn về phading. Nếu trước đây chúng ta coi đó là một nhược điểm của môi trường truyền dẫn hở và tìm cách tránh, xóa bỏ thì bây giờ chúng ta lại được nhờ nó do chúng ta hiểu và sử dụng nó đúng tình huống. Dung lượng của hệ thống theo phương pháp này càng tăng nếu như mật độ thuê bao trong sector càng cao vì với nhiều User phân bố đều ở tất cả các vị trí trong cell thì ở bất cứ thời điểm nào cũng có ít nhất một User có trạng thái kênh cực tốt để truyền dẫn với tốc độ cực lớn. Độ tăng dung lượng này người ta thường nhắc đến với tên gọi phân tập đa người sử dụng- Multi-User Diversity. Tuy nhiên có người sẽ đặt ra một câu hỏi là: Nếu bộ scheduler quyết định cấp phát tài nguyên dựa trên trạng thái kênh của máy đầu cuối thì sẽ có trường hợp có User sẽ không truyền dẫn được trong một khoảng thời gian dài vì User này luôn ở trạng thái kênh kém hơn những User khác. Thắc mắc này hoàn toàn hợp lý. Và nó dẫn đến vấn đề cân bằng giữa dung lượng hệ thống và sự thỏa mãn đối với người sử dụng. Sự thỏa mãn ở đây nghĩa là không để một User phải đợi quá lâu mới được truy nhập hệ thống. Để đạt được yếu tố cân bằng này các bộ scheduler được thiết kế ngoài dựa trên nguyên tắc ở trên còn phải kết hợp với nguyên tắc Round-Robin (first come, first serve). Và mỗi nhà sản xuất thiết bị sẽ có những lựa chọn thiết kế khác nhau chứ không nhà sản xuất nào giống nhà sản xuất nào vì bản thân vấn đề này chỉ được đưa ra nguyên lý trong 3GPP và 3GPP2 chứ không chuẩn hóa thành một kỹ thuật đặc biệt cụ thể. Một điều thú vị khác nữa cần phải nhắc đến là không dùng điều khiển công suất mà điều khiển thu phát có động lực tốt đối với sự phát triển của thị trường máy đầu cuối. Điều này có thể được giải thích như sau: Khi điều khiển thu phát, bộ lập lịch gói dựa vào những thông tin trạng thái kênh do MS gửi về (Channel Quality Indicator Channel). Mà thường thì MS sẽ dựa vào tham số SIR để yêu cầu bộ lập lịch cấp phát tài nguyên. Do đó, máy di động càng hiện đại nghĩa là khả năng nén nhiễu càng lớn (nghĩa là SIR lớn) thì bộ lập lịch cấp phát và điều khiển BTS phát với tốc độ cao hơn. Như vậy nếu khách hàng đầu tư máy đầu cuối hiện đại sẽ được lợi chứ không phải là hệ điều hành hưởng lợi như sử dụng điều khiển công suất. Vì với điều khiển công suất, nếu máy đầu cuối tốt, BTS yêu cầu MS giảm công suất phát, do đó nhiễu giảm và dung lượng hệ thống tăng. Khi dung lượng tăng đó là lợi ích của hệ điều hành chứ không phải là lợi ích của người sử dụng. Với lợi ích thuộc về khách hàng như vậy có thể nói đây là yếu tố kích thích quá trình tiêu thụ máy đầu cuối sôi động hơn. 5.5 Các kỹ thuật sử dụng trong HSDPA 5.5.1 Điều chế và Mã hoá thích ứng-Kỹ thuật truyền dẫn đa mã  Trong thông tin di động, tỉ lệ tín trên tạp (SINR) của tín hiệu nhận được tại một thiết bị người sử dụng  luôn biến đổi  trong khoảng từ 30 – 40dB do phading nhanh và các đặc điểm về địa hình trong một cell. Nhằm cải thiện dung lượng của hệ thống, tốc độ dữ liệu đỉnh, vùng phủ sóng… tín hiệu truyền tới người dùng được xác định nhằm tính toán quá trình thay đổi chất lượng tín hiệu thông qua quá trình xử lý liên kết thích ứng. Trong WCDMA ứng dụng chức năng điều khiển công suất nhanh cho các liên kết thích ứng. Ngược lại, HSDPA lưu công suất phát không đổi qua TTI đồng thời sử dụng điều chế thích ứng và mã hoá (AMC) như một phương pháp liên kết thích ứng đan xen nhằm điều khiển công suất cải thiện hiệu suất phổ. Để đối phó với dải động của tỷ số tạp âm trên nhiễu Eb/No tại đầu cuối UE, HSDPA thích ứng quá trình điều chế, tỷ lệ mã hoá và số mã hoá định kênh với các điều kiện vô tuyến hiện thời. Sự kết hợp của hai phương pháp trên gọi là: Điều chế và Mã hoá thích ứng – AMC Bên cạnh QPSK, HSDPA còn kết hợp chặt chẽ với phương thức điều chế 16QAM để tăng tốc độ dữ liệu đỉnh của các user được phục vụ với điều kiện vô tuyến thích hợp. Việc hỗ trợ cho QPSK có tính chất bắt buộc đối với thông tin di động, còn đối với 16QAM là một tuỳ chọn cho mạng và thiết bị người dùng UE. Sử dụng đồng thời cả 2 phương thức điều chế này, đặc biệt là phương thức điều chế cấp cao 16 QAM, đưa ra một số thách thức nhất định đối với độ phức tạp của bộ thu đầu cuối, nó cần phải xác định được biên độ tương ứng của các ký hiệu nhận được, trong khi đối với phương pháp điều chế QPSK truyền thống chỉ yêu cầu tách pha tín hiệu. Một bộ mã hoá Turbo dựa trên bộ mã hoá Turbo R99 với tỉ lệ mã hoá 1/3, mặc dù các tỷ lệ mã hoá hiệu dụng khác trong phạm vi (xấp xỉ 1/6 đến 1/1) cũng có thể có được bằng các kỹ thuật ghép, trích, lặp mã. Kết quả là tạo ra một dải tỉ lệ mã có tới 64 giá trị khác nhau. Sự kết hợp của một kiểu điều chế và một tỉ lệ mã được gọi là “Lược đồ mã hoá và điều chế” Ngoài kỹ thuật Điều chế và mã hoá thích ứng AMC, phát đa mã cũng có thể coi như là một công cụ thích ứng liên kết. Nếu như user có đầy đủ các điều kiện kênh vô tuyến thích hợp, node B có thể lợi dụng điều kiện này bằng cách phát nhiều mã song song với nhau, nhằm đạt được thông lượng dữ liệu đỉnh khá lớn. Với kỹ thuật phát đa mã, toàn bộ dải động AMC có thể được tăng lên một lượng:10log 10 15 ~ 12 dBs Toàn bộ dải động thích ứng liên kết do AMC kết hợp phát đa mã xấp xỉ 30 dB. Node- B sẽ xác định tốc độ truyền dẫn dữ liệu dựa trên các báo cáo về chỉ thị chất lượng kênh CQI cũng như các thống kê công suất trên các kênh dành riêng. Tốc độ dữ liệu được điều chỉnh bằng cách thay đổi sơ đồ điều chế, tốc độ mã hoá cũng như số lượng mã hoá kênh HS-PDSCH. Sử dụng điều chế thích ứng và mã hoá AMC cho phép người sử dụng tiến gần hơn tới Node- B, có thể yêu cầu điều chế với tỉ lệ mã hoá cao hơn (chẳng hạn như điều chế 16- QAM với  tỉ lệ mã hoá 3/4). Bảng 5.1 Lược đồ mã hoá điều chế HSDPA, tốc độ bit tối đa khả dụng với mỗi mã TFRC Modulation Effective Code Rate Instanteaneous Data Rate with 1 HS-PDSCH code #00 QPSK 0.14 68.5 kbps #10 QPSK 0.27 128.5 kbps #20 QPSK 0.39 188.5 kbps #30 QPSK 0.52 248.5 kbps #40 QPSK 0.64 308.0 kbps #50 QPSK 0.77 368.5 kbps #00 16 QAM 0.32 302.5 kbps #10 16 QAM 0.38 362.0 kbps #20 16 QAM 0.45 433.0 kbps #30 16 QAM 0.54 518.0 kbps #40 16 QAM 0.65 619.5 kbps #50 16 QAM 0.77 741.5 kbps 5.5.2 Kỹ thuật H- ARQ Khi vận hành HSDPA ở lân cận hiệu suất phổ cao nhất, tỉ lệ lỗi khối BLER sau lần truyền dẫn đầu tiên được khuyến nghị trong khoảng từ 10- 20%. Cơ chế yêu cầu lặp tự động lai H-ARQ được ứng dụng trong giải pháp HSDPA nhằm giảm trễ và tăng hiệu suất của quá trình tái truyền dẫn dữ liệu. Thực tế, H- ARQ là một giao thức dạng dừng lại và chờ SAW (Stop And Wait). Trong cơ chế SAW, phía truyền dẫn luôn luôn ở quá trình truyền dẫn  các block đang hiện hành cho tới khi thiết bị người sử dụng hoàn toàn nhận được dữ liệu. Để tận dụng thời gian khi Node- B chờ các báo nhận, có thể thiết lập N tiến trình SAW-ARQ song song cho thiết bị người dùng. Do đó, các tiến trình khác nhau truyền dẫn trong các TTI riêng biệt. Số tiến trình SAW-ARQ song song được thiết lập tối đa là 8 (N=8), tuy nhiên thông thường chọn giá trị N từ 4-6. Thời gian trễ nhỏ nhất cho phép giữa quá trình truyền dữ liệu gốc so với quá trình tái truyền dẫn dữ liệu lần đầu tiên trong HSDPA là 12ms. Điều khiển H- ARQ lớp 1 được đặt tại Node-B, do đó việc lưu trữ các gói dữ liệu phi báo nhận cùng với chức năng sắp xếp các gói của quá trình tái truyền dẫn là không phụ thuộc vào RNC. Như vậy sẽ tránh được trễ tái truyền dẫn, ngoài ra các trễ này sẽ thấp hơn trễ gây ra bởi quá trình tái truyền dẫn RLC thông thường. Kỹ thuật HARQ là điểm khác cơ bản so với kỹ thuật phát lại trong WCDMA bởi bộ giải mã UE kết hợp các thông tin “mềm” của quá trình phát lại của cùng một block ở cấp độ bit. Kỹ thuật này đưa ra một số yêu cầu về mở rộng dung lượng bộ nhớ của UE, do UE phải lưu các thong tin “mềm” của những lần phát giải mã không thành công. Hình 5.10 :Hoạt động của giao thức SAW 4 kênh Các phương pháp HARQ như sau: - Kết hợp khuôn (CC: Chase Combining) mỗi lần phát lại chỉ đơn giản là sự lặp lại của từ mã đã được sử dụng cho lần phát đầu tiên. Ưu điểm: Việc truyền và truyền lại được giải mã riêng lẻ (tự giải mã), tăng tính đa dạng thời gian, có thể tăng tính đa dạng đường truyền. Nhược điểm: Việc phát lại toàn bộ các gói sẽ lãng phí về băng thông. -Tăng độ dư (IR : Incremental Redundancy): Sự phát lại bao gồm cả thông tin dư thừa bổ xung và thông tin này được phát kèm thêm nếu có lỗi giải mã trong lần phát đầu tiên. Hình 5.11 : Quá trình truyền lại khối dữ liệu IR Tăng độ dư được sử dụng để nhận được tính năng tối đa trong băng thông sẵn sàng. Lúc này block được phát lại chỉ bao gồm dữ liệu sửa chữa của tín hiệu gốc được truyền đi chứ không phải thông tin thực sự. Lượng thông tin dư thêm vào được gửi đi ngày càng tăng lên khi quá trình phát lại lặp đi lặp lại mà bên thu vẫn nhận bị lỗi. Ưu điểm: Giảm bớt băng thông/ lưu lượng hữu dụng của một người sử dụng và dùng nó cho những người khác. Nhược điểm: Các bit hệ thống chỉ được gửi đi khi truyền lần đầu và không thể truyền lại, điều đó làm cho quá trình truyền lại không thể tự giải mã. Vì thế, nếu quá trình truyền lần đầu bị mất thì phading rất lớn sẽ tác động và không có cơ hội khôi phục lại dữ liệu trong hoàn cảnh này. 5.6 Kết luận chương 5: Với những cải tiến mang tính đột phá, HSDPA là một công nghệ đang được chú trọng phát triển. Trên thực tế, thị trường của HSDPA phát triển mạnh mẽ nhất, đặc biệt là ở giai đoạn khởi đầu, là ở những nước phát triển, nơi có lượng khách hàng khổng lồ sử dụng điện thoại di động chất lượng cao. Lý do là vì những chiếc điện thoại HSDPA sẽ có giá thành cao hơn hẳn những chiếc điện thoại thông thường – được nhắm vào thị trường những nước phát triển thấp hơn. Đến năm 2010, con số này có thể là 100 triệu chiếc, theo phân tích của IDC. Hơn nữa, theo Strategic Analytics, đến năm 2010, 70% điện thoại 3G sẽ sử dụng HSDPA. Tuy nhiên, sẽ mất nhiều thời gian để HSDPA thực sự trở nên phổ biến. Hầu hết các nước trên thế giới đều mới bắt đầu sử dụng kỹ thuật mạng 3G. Rất nhiều nhà cung cấp dịch vụ di động đang cố gắng triển khai mạng 3G và có thể được nâng cấp thành mạng 3.5G theo nhu cầu của thị trường. C Kết luận ông nghệ điện thoại di động phổ biến GSM đang gặp nhiều cản trở và sẽ sớm bị thay thế bằng những công nghệ tiên tiến hơn.Các ứng dụng truyền thông hữu ích như điện thoại truyền hình, định vị và tìm kiếm thông tin, truy cập Internet, truyền tải dữ liệu dung lượng lớn, nghe nhạc và xem video chất lượng cao... cùng nhiều ứng dụng dịch vụ viễn thông tiên tiến khác đang được triển khai thực hiện trên mạng di động 3G. Bộ Thông tin và Truyền thông (TT-TT) đã chính thức công bố tên của 4 nhà cung cấp dịch vụ viễn thông trúng tuyển 3G vào ngày 2/4/2009 .Các nhà cung cấp trúng tuyển đã bắt đầu vào việc khai thác dịch vụ 3 G và hướng phát triển chủ yếu là dựa trên công nghệ WCDMA. Trong tương lai gần thì 3 G sẽ trở nên gần gũi với người sử dụng dịch vụ viễn thông tại Việt Nam Trong đồ án này em đã trình bày một cách cơ bản từ cấu trúc mạng, các giải pháp kỹ thuật trong WCDMA. Đồng thời đồ án cũng đưa ra hướng phát triển mới là công nghệ HSDPA với những cái tiến mang tính đột phá của nó. Theo các nghiên cứu và từ thực tế từ các nước đã triển khai trước đó thì có thể nói 3G (WCDMA) hay xa hơn là 3.5G (HSDPA) có tương lai phát triển vô cùng tươi sáng. Tuy nhiện, hiện trạng các dịch vụ nội dung số trên Mobile ở nước được đánh giá là vẫn còn nghèo nàn. Bên cạnh đó, thiết bị di động hỗ trợ nền tảng 3G được bán ra vẫn ở mức rất thấp. Nhìn về tương lai cho thấy, muốn 3G phát triển thành công ở Việt Nam cần phải đẩy mạnh việc số hóa các dịch vụ tài chính công, hành chính công, y tế, giáo dục, thương mại điện tử, dịch vụ thuế… Có phát triển những dịch vụ này trên 3G thì mới đảm bảo bền lâu dài cho sự thành công của 3G tại Việt Nam khi việc ứng dụng Internet di động đi vào mọi mặt trong đời sống xã hội Đồ án tuy đã nêu lên được cái nhìn khá đầy đủ về công nghệ WCDMA-HSDPA tuy nhiên do kiến thức, thực tế và thời gian hạn chế nên còn có nhiều thiếu sót cũng như chưa tìm hiểu thêm về các vấn đề mới như công nghệ HSUPA…và chủ yếu mang tính lý thuyết chứ chưa giải quyết được các yêu cầu thực tế đòi hỏi. Một lần nữa em xin cảm ơn các thầy cô, các bạn và đặc biệt là cô giáo hướng dẫn: ĐẶNG THỊ TỪ MỸ đã tận tình giúp đỡ em hoàn thành bản đồ án này. Quy Nhơn, ngày 10 tháng 6 năm 2010 Sinh viên thực hiện Nguyễn Hải Quân TÀI LIỆU THAM KHẢO Tài Liệu Tiếng Việt : [ 1 ] Vũ Đức Thọ, Thông tin di động số Cellular, Nhà xuất bản giáo dục, 1997. [ 2 ] TS. Nguyễn Phạm Anh Dũng, Thông tin di động thế hệ ba, Học Viện Công Nghệ Bưu Chính Viễn Thông, 2002. [ 3 ] Nguyễn Văn Thuận, Hệ thống thông tin di động WCDMA, Học Viện Công Nghệ Bưu Chính Viễn Thông, 2004. [ 4 ] TS Trịnh Anh Vũ, Thông tin di động, NXB ĐH Quốc Gia Hà Nội 2007 [ 5 ] Ngôn ngữ lập trình Visual Basic , ĐH Bách Khoa Đà Nẵng Tài liệu Tiếng Anh: [ 7 ] Harri Holma and Antti Toskala, WCDMA for UMTS, John Wiley & Sons 2004. [ 8 ] Keiji Tachikawa, WCDMA OBILE COMMUNICATIONS SYSTEM, John Wiley & Sons 2002. PHỤ LỤC Đoạn code chương trình mô phỏng : 1. Form chính Private Sub Command1_Click() cautrucmang.Show End Sub Private Sub Command2_Click() THUTUC.Show End Sub Private Sub Command3_Click() chuyendaomem.Show End Sub Private Sub Command4_Click() Unload Me End Sub 2. Cấu trúc mạng Private Sub Command1_Click() roadto3g.Show End Sub Private Sub Command2_Click() formchinh.Show Unload Me End Sub Private Sub Form_Load() Timer1.Interval = 500 End Sub Private Sub Timer1_Timer() Dim x As String Dim y As String x = Left(Text1.Text, 1) y = Right(Text1.Text, Len(Text1.Text) - 1) Text1.Text = y + x End Sub 3.Road to 3G Dim i As Integer Private Sub Command1_Click() cautrucmang.Show Unload Me End Sub Private Sub Form_Load() Timer1.Enabled = True Image1.Visible = False Image2.Visible = False Image3.Visible = False Image4.Visible = False i = 0 End Sub Private Sub Timer1_Timer() i = i + 1 If i = 1 Then Image1.Visible = True ElseIf i = 2 Then Image2.Visible = True ElseIf i = 3 Then Image3.Visible = True ElseIf i = 4 Then Image4.Visible = True ElseIf i = 5 Then Image1.Visible = False Image2.Visible = False Image3.Visible = False Image4.Visible = False i = 0 End If End Sub Private Sub Timer2_Timer() Dim x As String Dim y As String 'gán x = 1 ký t? d?u dòng van b?n x = Left(Text1.Text, 1) 'gán y là ph?n còn l?i y = Right(Text1.Text, Len(Text1.Text) - 1) Text1.Text = y + x End Sub 4. Chuyển giao mềm Dim i As Integer Private Sub Command1_Click() Timer1.Enabled = True End Sub Private Sub Command2_Click() Timer1.Enabled = False End Sub Private Sub Command3_Click() formchinh.Show Unload Me End Sub Private Sub Form_Load() Timer1.Enabled = False Image2.Visible = False Image3.Visible = False Image4.Visible = False Image5.Visible = False Image6.Visible = False 'Image7.Visible = False Image8.Visible = False Image9.Visible = False Image10.Visible = False Image11.Visible = False Image12.Visible = False Image13.Visible = False Image14.Visible = False Image15.Visible = False Image16.Visible = False Image17.Visible = False Image18.Visible = False Image19.Visible = False Image20.Visible = False Image21.Visible = False i = 0 End Sub Private Sub Picture1_Click() End Sub Private Sub Timer1_Timer() i = i + 1 If i = 1 Then Image18.Visible = True Image6.Visible = False Image14.Visible = False Image21.Visible = False Image1.Visible = True Image7.Visible = True ElseIf i = 2 Then Image2.Visible = True Image8.Visible = True Image19.Visible = True Image7.Visible = False Image1.Visible = False Image18.Visible = False ElseIf i = 3 Then Image9.Visible = True Image3.Visible = True Image11.Visible = True Image18.Visible = True Image21.Visible = True Image15.Visible = True Image2.Visible = False Image8.Visible = False Image19.Visible = False ElseIf i = 4 Then Image4.Visible = True Image3.Visible = True Image10.Visible = True Image12.Visible = True Image16.Visible = True Image19.Visible = True Image20.Visible = True Image9.Visible = False Image3.Visible = False Image11.Visible = False Image18.Visible = False Image21.Visible = False Image15.Visible = False ElseIf i = 5 Then Image5.Visible = True Image13.Visible = True Image17.Visible = True Image20.Visible = True Image4.Visible = False Image3.Visible = False Image10.Visible = False Image12.Visible = False Image16.Visible = False Image19.Visible = False ElseIf i = 6 Then i = 0 Image6.Visible = True Image14.Visible = True Image21.Visible = True Image5.Visible = False Image13.Visible = False Image17.Visible = False Image20.Visible = False End If End Sub Private Sub Timer2_Timer() Dim x As String Dim y As String x = Left(Text1.Text, 1) y = Right(Text1.Text, Len(Text1.Text) - 1) Text1.Text = y + x End Sub 5. Thủ tục Option Explicit Dim i As Integer Dim h As Integer Dim w As Integer Dim u As Integer Dim mo, no As Integer Dim l, k, j As Integer Dim ma, na As Integer Dim mb, nb As Integer Dim mc, nc As Integer Dim md, nd As Integer Dim mf, nf As Integer Dim mi, ni As Integer Dim mj, nj As Integer Dim mk, nk As Integer Dim ml, nl As Integer Dim ms, ns As Integer Dim mg, ng As Integer Dim mh, nh As Integer Dim mq, nq As Integer Dim mw, nw As Integer Dim mr, nr As Integer Dim my, ny As Integer Dim mu, nu As Integer Dim th1 As Integer Dim th2 As Integer Dim t1 As Integer Dim t2 As Integer Dim t3 As Integer Dim t4 As Integer Dim t5 As Integer Private x As Integer Private y As Integer Private z1 As Integer Private z2 As Integer Private z3 As Integer Private z4 As Integer Private z5 As Integer Private z6 As Integer Private z7 As Integer Private z8 As Integer Private z9 As Integer Private z10 As Integer Private z11 As Integer Private z12 As Integer Private z13 As Integer Dim trangthai As Integer Private Sub al2_Click(Index As Integer) End Sub Private Sub cmd3_Click() formchinh.Show formchinh.Enabled = True THUTUC.Hide THUTUC.Enabled = False End Sub Private Sub Command1_Click() Timer12.Enabled = True End Sub Private Sub cmdtd_Click() Dim i As Integer trangthai = 1 Timer22.Enabled = True Timer21.Enabled = False img15.Visible = False For i = 0 To 11 m7(i).Visible = False Next i img12(0).Visible = False img12(1).Visible = False Timer11.Enabled = False Timer12.Enabled = False Timer13.Enabled = False For i = 0 To 1 al12(i).Visible = False Next i al11.Visible = False al13.Visible = False End Sub Private Sub cmdth_Click() Dim i As Integer cmdtd.Enabled = False For i = 0 To 1 img1(i).Visible = False img2(i).Visible = False img3(i).Visible = False img4(i).Visible = False img5(i).Visible = False img6(i).Visible = False img7(i).Visible = False img8(i).Visible = False img9(i).Visible = False img10(i).Visible = False img11(i).Visible = False img12(i).Visible = False Next i img15.Visible = False z13 = 0 z1 = 0 z2 = 0 z3 = 0 z4 = 0 z5 = 0 z6 = 0 z7 = 0 z8 = 0 z9 = 0 z10 = 0 z11 = 0 z12 = 0 w = 0 ma = 0 mb = 0 mc = 0 md = 0 mf = 0 nf = 0 mg = 0 mh = 0 ms = 0 mk = 0 ml = 0 mj = 0 mi = 0 i = 0 j = 0 k = 0 l = 0 h = 0 nk = 0 na = 0 nb = 0 nc = 0 nd = 0 ni = 0 nj = 0 nl = 0 ns = 0 ng = 0 nf = 0 th1 = 0 th2 = 0 mq = 0 nq = 0 mr = 0 nh = 0 nr = 0 mw = 0 nw = 0 mo = 0 no = 0 Timer2.Enabled = False Timer3.Enabled = False Timer4.Enabled = False Timer5.Enabled = False Timer6.Enabled = False Timer7.Enabled = False Timer8.Enabled = False Timer9.Enabled = False Timer11.Enabled = False Timer12.Enabled = False Timer13.Enabled = False Timer14.Enabled = False Timer15.Enabled = False Timer16.Enabled = False Timer17.Enabled = False Timer18.Enabled = False Timer19.Enabled = False Timer20.Enabled = False Timer21.Enabled = False Timer23.Enabled = False Timer22.Enabled = False Timer24.Enabled = False al11.Visible = False al12(0).Visible = False al12(1).Visible = False al13.Visible = False al23.Visible = False al21.Visible = False al22(0).Visible = False al22(1).Visible = False For i = 0 To 2 m1(i).Visible = False a1(i).Visible = False a2(i).Visible = False m11(i).Visible = False m22(i).Visible = False m23(i).Visible = False Next i For k = 0 To 5 m12(k).Visible = False m13(k).Visible = False m14(k).Visible = False m15(k).Visible = False m16(k).Visible = False m21(k).Visible = False m21(k).Visible = False m24(k).Visible = False m25(k).Visible = False mn1(k).Visible = False mn2(k).Visible = False Next k For j = 0 To 11 m7(j).Visible = False m8(j).Visible = False Next j If opt(0).Value = True Then Timer11.Enabled = True Timer3.Enabled = True C1.Enabled = True C3.Enabled = False End If If opt(1).Value = True Then Timer12.Enabled = True Timer3.Enabled = True C3.Enabled = True C1.Enabled = True End If If opt(2).Value = True Then Timer13.Enabled = True Timer3.Enabled = True C3.Enabled = True C1.Enabled = False End If End Sub Private Sub Form_Load() img15.Visible = False 'Me.Height = 11010 'Me.Width = 15255 z13 = 0 z1 = 0 z2 = 0 z3 = 0 z4 = 0 z5 = 0 z6 = 0 z7 = 0 z8 = 0 z9 = 0 z10 = 0 z11 = 0 z12 = 0 z10 = 0 h = 0 w = 0 u = 0 mo = 0 no = 0 Timer1.Enabled = True Timer2.Enabled = False Timer3.Enabled = False Timer4.Enabled = False Timer5.Enabled = False Timer6.Enabled = False Timer7.Enabled = False Timer8.Enabled = False Timer9.Enabled = False Timer11.Enabled = False Timer12.Enabled = False Timer13.Enabled = False Timer14.Enabled = False Timer15.Enabled = False Timer16.Enabled = False Timer17.Enabled = False Timer18.Enabled = False Timer19.Enabled = False Timer20.Enabled = False Timer21.Enabled = False Timer22.Enabled = False Timer23.Enabled = False Timer24.Enabled = False al11.Visible = False al12(0).Visible = False al12(1).Visible = False al13.Visible = False al23.Visible = False al21.Visible = False al22(0).Visible = False al22(1).Visible = False For i = 0 To 1 img1(i).Visible = False img2(i).Visible = False img3(i).Visible = False img4(i).Visible = False img5(i).Visible = False img6(i).Visible = False img7(i).Visible = False img8(i).Visible = False img9(i).Visible = False img10(i).Visible = False img11(i).Visible = False img12(i).Visible = False Next i mh = 0 mg = 0 nk = 0 For i = 0 To 2 m1(i).Visible = False a1(i).Visible = False a2(i).Visible = False m11(i).Visible = False m22(i).Visible = False m23(i).Visible = False Next i For k = 0 To 5 m12(k).Visible = False m13(k).Visible = False m14(k).Visible = False m15(k).Visible = False m16(k).Visible = False m21(k).Visible = False m24(k).Visible = False m25(k).Visible = False mn1(k).Visible = False mn2(k).Visible = False Next k For j = 0 To 11 m7(j).Visible = False m8(j).Visible = False Next j opt(0).Value = True End Sub Private Sub lbl1_Click() End Sub Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer) 'frmchinh.Show 'frmchinh.Enabled = True Unload Me End Sub Private Sub Image10_Click() End Sub Private Sub Picture1_Click() End Sub Private Sub Timer1_Timer() If l > 2 Then For i = 0 To 2 a1(i).Visible = False a2(i).Visible = False l = 0 Next i Exit Sub End If a1(l).Visible = True a2(l).Visible = True l = l + 1 End Sub Private Sub Timer10_Timer() Dim x As String Dim y As String 'gán x = 1 ký t? d?u dòng van b?n x = Left(Text1.Text, 1) 'gán y là ph?n còn l?i y = Right(Text1.Text, Len(Text1.Text) - 1) 'Hi?n th? tr? l?i textbox theo th? t? ngu?c l?i. Text1.Text = y + x End Sub Private Sub Timer11_Timer() Select Case mj Case 0: al11.Visible = False mj = 1 Case 1: al11.Visible = True mj = 0 End Select End Sub Private Sub Timer12_Timer() Select Case mh Case 0: al12(0).Visible = False al12(1).Visible = True mh = 1 Case 1: al12(0).Visible = True al12(1).Visible = False mh = 0 End Select End Sub Private Sub Timer13_Timer() Select Case ml Case 0: al13.Visible = False ml = 1 Case 1: al13.Visible = True ml = 0 End Select End Sub Private Sub Timer14_Timer() Dim i As Integer z7 = z7 + 1 If ms > 2 Then For ns = 0 To 2 m22(ns).Visible = False ms = 0 Next ns Exit Sub End If m22(ms).Visible = True ms = ms + 1 Select Case z7 Case 0: img8(0).Visible = True img8(1).Visible = False Case 1: img8(0).Visible = False img8(1).Visible = True Case 2: img8(0).Visible = True img8(1).Visible = False Case 3: img8(0).Visible = False img8(1).Visible = True Case 4: img8(0).Visible = True img8(1).Visible = False Case 5: img8(0).Visible = False img8(1).Visible = True End Select If z7 = 5 Then Timer18.Enabled = True Timer14.Enabled = False For i = 0 To 2 m22(i).Visible = False Next i img8(0).Visible = False img8(1).Visible = False End If End Sub Private Sub Timer15_Timer() Select Case nj Case 0: al21.Visible = False nj = 1 Case 1: al21.Visible = True nj = 0 End Select End Sub Private Sub Timer16_Timer() Select Case mh Case 0: al22(0).Visible = False al22(1).Visible = True mh = 1 Case 1: al22(0).Visible = True al22(1).Visible = False mh = 0 End Select End Sub Private Sub Timer17_Timer() Select Case nk Case 0: al23.Visible = False nk = 1 Case 1: al23.Visible = True nk = 0 End Select End Sub Private Sub Timer18_Timer() Dim i As Integer z8 = z8 + 1 If ml > 2 Then For nl = 0 To 2 m23(nl).Visible = False ml = 0 Next nl Exit Sub End If m23(ml).Visible = True ml = ml + 1 Select Case z8 Case 0: img9(0).Visible = True img9(1).Visible = False Case 1: img9(0).Visible = False img9(1).Visible = True Case 2: img9(0).Visible = True img9(1).Visible = False Case 3: img9(0).Visible = False img9(1).Visible = True Case 4: img9(0).Visible = True img9(1).Visible = False Case 5: img9(0).Visible = False img9(1).Visible = True End Select If z8 = 5 Then Timer19.Enabled = True Timer18.Enabled = False For i = 0 To 2 m23(i).Visible = False Next i img9(0).Visible = False img9(1).Visible = False End If End Sub Private Sub Timer19_Timer() Dim i As Integer z9 = z9 + 1 If mq > 5 Then For nq = 0 To 5 m24(nq).Visible = False mq = 0 Next nq Exit Sub End If m24(mq).Visible = True mq = mq + 1 Select Case z9 Case 0: img10(0).Visible = True img10(1).Visible = False Case 1: img10(0).Visible = False img10(1).Visible = True Case 2: img10(0).Visible = True img10(1).Visible = False Case 3: img10(0).Visible = False img10(1).Visible = True Case 4: img10(0).Visible = True img10(1).Visible = False Case 5: img10(0).Visible = False img10(1).Visible = True Case 6: img10(0).Visible = True img10(1).Visible = False Case 7: img10(0).Visible = False img10(1).Visible = True Case 8: img10(0).Visible = True img10(1).Visible = False End Select If z9 = 8 Then Timer19.Enabled = False Timer20.Enabled = True Timer8.Enabled = False img6(0).Visible = False img6(1).Visible = False For i = 0 To 5 m15(i).Visible = False m24(i).Visible = False Next i img10(0).Visible = False img10(1).Visible = False End If End Sub Private Sub Timer20_Timer() Dim i As Integer z10 = z10 + 1 If mr > 5 Then For nr = 0 To 5 m25(nr).Visible = False m16(nr).Visible = False mr = 0 Next nr Exit Sub End If m25(mr).Visible = True m16(mr).Visible = True mr = mr + 1 Select Case z10 Case 0: img11(0).Visible = True img11(1).Visible = False Case 1: img11(0).Visible = False img11(1).Visible = True Case 2: img11(0).Visible = True img11(1).Visible = False Case 3: img11(0).Visible = False img11(1).Visible = True Case 4: img11(0).Visible = True img11(1).Visible = False Case 5: img11(0).Visible = False img11(1).Visible = True Case 6: img11(0).Visible = True img11(1).Visible = False Case 7: img11(0).Visible = False img11(1).Visible = True Case 8: img11(0).Visible = True img11(1).Visible = False End Select If z10 = 8 Then Timer20.Enabled = False Timer21.Enabled = True Timer23.Enabled = True cmdtd.Enabled = True For i = 0 To 5 m25(i).Visible = False m16(i).Visible = False Next i img11(0).Visible = False img11(1).Visible = False End If End Sub Private Sub Timer21_Timer() If mw > 11 Then For nw = 0 To 11 m7(nw).Visible = False mw = 0 Next nw Exit Sub End If m7(mw).Visible = True mw = mw + 1 If z13 < 9 Then z13 = z13 + 1 If u = 0 Then img12(0).Visible = True img12(1).Visible = False u = 1 Else: img12(1).Visible = True img12(0).Visible = False u = 0 End If End If If z13 = 9 Then img12(1).Visible = False img12(0).Visible = False End If End Sub Private Sub Timer22_Timer() z11 = z11 + 1 If my > 5 Then For ny = 0 To 5 mn1(ny).Visible = False my = 0 Next ny Exit Sub End If mn1(my).Visible = True my = my + 1 If z11 = 8 Then Timer22.Enabled = False Timer24.Enabled = True For i = 0 To 5 mn1(i).Visible = False Next i End If End Sub Private Sub Timer23_Timer() If mu > 11 Then For nu = 0 To 11 m8(nu).Visible = False mu = 0 Next nu Exit Sub End If m8(mu).Visible = True mu = mu + 1 img15.Visible = True End Sub Private Sub Timer24_Timer() Dim i As Integer z12 = z12 + 1 If mo > 5 Then For no = 0 To 5 mn2(no).Visible = False mo = 0 Next no Exit Sub End If mn2(mo).Visible = True mo = mo + 1 If z12 = 8 Then Timer23.Enabled = False img15.Visible = False For i = 0 To 11 m8(i).Visible = False Next i Timer24.Enabled = False For i = 0 To 2 mn2(i).Visible = False Next i For i = 0 To 11 m8(i).Visible = False Next i Timer15.Enabled = False Timer16.Enabled = False Timer17.Enabled = False For i = 0 To 1 al22(i).Visible = False Next al21.Visible = False al23.Visible = False End If End Sub Private Sub Timer3_Timer() Dim k As Integer z1 = z1 + 1 If ma > 2 Then For na = 0 To 2 m1(na).Visible = False ma = 0 Next na Exit Sub End If m1(ma).Visible = True ma = ma + 1 Select Case z1 Case 0: img1(0).Visible = True img1(1).Visible = False Case 1: img1(0).Visible = False img1(1).Visible = True Case 2: img1(0).Visible = True img1(1).Visible = False Case 3: img1(0).Visible = False img1(1).Visible = True Case 4: img1(0).Visible = True img1(1).Visible = False Case 5: img1(0).Visible = False img1(1).Visible = True End Select If z1 = 5 Then z1 = 0 ma = 0 Timer3.Enabled = False Timer4.Enabled = True For t1 = 0 To 2 m1(t1).Visible = False Next t1 img1(0).Visible = False img1(1).Visible = False End If End Sub Private Sub Timer4_Timer() Dim i As Integer z2 = z2 + 1 If mb > 2 Then For nb = 0 To 2 m11(nb).Visible = False mb = 0 Next nb Exit Sub End If m11(mb).Visible = True mb = mb + 1 Select Case z2 Case 0: img2(0).Visible = True img2(1).Visible = False Case 1: img2(0).Visible = False img2(1).Visible = True Case 2: img2(0).Visible = True img2(1).Visible = False Case 3: img2(0).Visible = False img2(1).Visible = True Case 4: img2(0).Visible = True img2(1).Visible = False Case 5: img2(0).Visible = False img2(1).Visible = True End Select If z2 = 5 Then Timer5.Enabled = True Timer4.Enabled = False For i = 0 To 2 m11(i).Visible = False Next i img2(0).Visible = False img2(1).Visible = False End If End Sub Private Sub Timer5_Timer() Dim i As Integer z3 = z3 + 1 If mc > 5 Then For nc = 0 To 5 m12(nc).Visible = False mc = 0 Next nc Exit Sub End If m12(mc).Visible = True mc = mc + 1 Select Case z3 Case 0: img3(0).Visible = True img3(1).Visible = False Case 1: img3(0).Visible = False img3(1).Visible = True Case 2: img3(0).Visible = True img3(1).Visible = False Case 3: img3(0).Visible = False img3(1).Visible = True Case 4: img3(0).Visible = True img3(1).Visible = False Case 5: img3(0).Visible = False img3(1).Visible = True Case 6: img3(0).Visible = True img3(1).Visible = False Case 7: img3(0).Visible = False img3(1).Visible = True Case 8: img3(0).Visible = True img3(1).Visible = False End Select If z3 = 8 Then Timer6.Enabled = True Timer5.Enabled = False For i = 0 To 5 m12(i).Visible = False Next i img3(0).Visible = False img3(1).Visible = False End If End Sub Private Sub Timer6_Timer() Dim i As Integer z4 = z4 + 1 If md > 5 Then For nd = 0 To 5 m13(nd).Visible = False md = 0 Next nd Exit Sub End If m13(md).Visible = True md = md + 1 Select Case z4 Case 0: img4(0).Visible = True img4(1).Visible = False Case 1: img4(0).Visible = False img4(1).Visible = True Case 2: img4(0).Visible = True img4(1).Visible = False Case 3: img4(0).Visible = False img4(1).Visible = True Case 4: img4(0).Visible = True img4(1).Visible = False Case 5: img4(0).Visible = False img4(1).Visible = True Case 6: img4(0).Visible = True img4(1).Visible = False Case 7: img4(0).Visible = False img4(1).Visible = True Case 8: img4(0).Visible = True img4(1).Visible = False End Select If z4 = 8 Then Timer6.Enabled = False Timer7.Enabled = True For i = 0 To 5 m13(i).Visible = False Next i img4(0).Visible = False img4(1).Visible = False End If End Sub Private Sub Timer7_Timer() Dim i As Integer z5 = z5 + 1 If mf > 5 Then For nf = 0 To 5 m14(nf).Visible = False mf = 0 Next nf Exit Sub End If m14(mf).Visible = True mf = mf + 1 Select Case z5 Case 0: img5(0).Visible = True img5(1).Visible = False Case 1: img5(0).Visible = False img5(1).Visible = True Case 2: img5(0).Visible = True img5(1).Visible = False Case 3: img5(0).Visible = False img5(1).Visible = True Case 4: img5(0).Visible = True img5(1).Visible = False Case 5: img5(0).Visible = False img5(1).Visible = True Case 6: img5(0).Visible = True img5(1).Visible = False Case 7: img5(0).Visible = False img5(1).Visible = True Case 8: img5(0).Visible = True img5(1).Visible = False End Select If z5 = 8 Then Timer7.Enabled = False Timer8.Enabled = True Timer9.Enabled = True For i = 0 To 5 m14(i).Visible = False Next i img5(0).Visible = False img5(1).Visible = False End If End Sub Private Sub Timer8_Timer() If mg > 5 Then For ng = 0 To 5 m15(ng).Visible = False mg = 0 Next ng Exit Sub End If m15(mg).Visible = True mg = mg + 1 If h = 0 Then img6(0).Visible = True img6(1).Visible = False h = 1 Else: img6(1).Visible = True img6(0).Visible = False h = 0 End If End Sub Private Sub Timer9_Timer() Dim i As Integer z6 = z6 + 1 If mi > 5 Then For ni = 0 To 5 m21(ni).Visible = False mi = 0 Next ni Exit Sub End If m21(mi).Visible = True mi = mi + 1 Select Case z6 Case 0: img7(0).Visible = True img7(1).Visible = False Case 1: img7(0).Visible = False img7(1).Visible = True Case 2: img7(0).Visible = True img7(1).Visible = False Case 3: img7(0).Visible = False img7(1).Visible = True Case 4: img7(0).Visible = True img7(1).Visible = False Case 5: img7(0).Visible = False img7(1).Visible = True Case 6: img7(0).Visible = True img7(1).Visible = False Case 7: img7(0).Visible = False img7(1).Visible = True Case 8: img7(0).Visible = True img7(1).Visible = False End Select If z6 = 8 Then If opt(0).Value = True Then Timer15.Enabled = True End If If opt(1).Value = True Then Timer16.Enabled = True End If If opt(2).Value = True Then Timer17.Enabled = True End If Timer14.Enabled = True Timer9.Enabled = False For i = 0 To 5 m21(i).Visible = False Next i img7(0).Visible = False img7(1).Visible = False End If End Sub

Các file đính kèm theo tài liệu này:

  • doccongnghe WCDMA-HSDPA .doc
  • exemo phong WCDMA-HSDPA.exe
  • ttfVNTIME.TTF